In the case in which you just started up the dialog, the strDevice
variable would be set to null, so it would not be able to check to make
sure whether the device is actually an Elgato or not, so just ignore
setting the use buffering checkbox if there is no strDevice set
Elgato Game Capture supports IAMStreamConfig since v.2.20 which makes
some workarounds obsolete
- added flags elgatoSupportsIAMStreamConfig and elgatoCanRenderFromPin
- added symbolic constant ELGATO_WORKAROUND
Use CLSID as provided in header file instead of redefining it in code
- added helper function GUIDToString() (although this functionality is
already in n OBSNVEnc\src\nvmain: guidToString())
Fix a bug where the 64 bit jump opcodes would be used unnecessarily, which resulted in function prologue overwrite in certain 64 bit D3D DLLs due to the length of the 64 bit jump.
Also if the game capture DLL is more than a 32 bit jump away, we now try to allocate memory near the target and set up an intermediate jump to get it within range.
Following previous reverts, fixes a number of isses with ConfigFile, and
prevents the hotkey thread from potentially corrupting the config file.
The user will no longer be able to update these two settings in real
time, but at this point I'd rather spend time on the new version rather
than make fixes that require too much time.
Because ConfigFile exposed the entire class to plugins, anything that
changes the class breaks ABI, and the last ConfigFile commit did just
that. So this adds an additional hack to allow additional internal
variables without breaking ABI. It changes the lpFileData in to a
variable that creates another internal variable structure as a rather
terrible hack for adding new internal variables.
So, what's the lesson? Never expose anything you don't need to expose
unless you need maximum performance and its structure size will never
change.
This reverts commit fb3188a7cd.
This was a change that was added to fix support for certain intel
devices, but ultimately I feel like it's just not needed and is trying
to fix something that isn't broken.
This reverts commit f5c2dc094a.
This was a change that was added to fix support for certain intel
devices, but ultimately I feel like it's just not needed and is trying
to fix something that isn't broken.