jpark37
c72b5de23e
libobs-d3d11: Support typeless textures
...
In the future, we may share or wrap typeless textures to support SRGB
and non-SRGB views.
2021-01-11 14:18:12 -08:00
jpark37
2d547cf669
libobs: Allow wrapping D3D11 object with gs_texture_t
...
This can be useful for reading from textures provided by middleware.
2020-11-24 14:39:56 -08:00
jp9000
7993179466
cmake: Add cmake folders
2020-05-13 06:52:37 -07:00
Colin Edwards
55e2985026
Merge pull request #1944 from WizardCM/windows-rc-definition
...
CMake: Build Windows modules with file descriptors
2020-04-18 18:27:22 -05:00
Richard Stanway
54c5ac250f
libobs-d3d11: Log device PCI IDs
...
This will help identify devices sharing the same names (eg "Intel HD
Graphics") for potentially adding to the blacklists should they have
issues.
2020-03-23 20:54:38 +01:00
jp9000
8ecfb405ce
Revert "win-capture, libobs: Show names of displays in Display Capture"
...
This reverts commit 9931f22ff4292e7e0a69c05cadaee474520b4786.
2020-03-19 06:43:57 -07:00
jp9000
b31c166814
Revert "graphics: libobs-d3d11: Use DXGI_SWAP_EFFECT_FLIP_DISCARD on Windows 10"
...
This reverts commit 4da73445c3b30ee0775168f122dc4902191d923a.
This is being reverted because apparently it causes flickering displays
for some people. Bad drivers or something? Not sure. Very annoying.
2020-03-11 09:35:47 -07:00
Matt Gajownik
9931f22ff4
win-capture, libobs: Show names of displays in Display Capture
2020-03-09 11:13:59 +11:00
brittneysclark
b8754f89fb
libobs-d3d11: Enable NV12 for Intel on newer platforms
...
Check Intel Device IDs and only disable NV12 on legacy Intel GPUs. NV12
copy times on new platforms (ICL+) is minimal.
2020-02-26 05:49:13 -08:00
jpark37
f27f858ab3
libobs: Support device loss registration
...
Complex external systems using the D3D11 device may need to perform
their own device loss handling, the upcoming Windows Graphics Capture
support for example.
2020-02-22 21:02:33 -08:00
jpark37
ed91c4e3bc
libobs-d3d11: Don't allow volume render targets
...
Unlikely to be necessary. Disable for simplicity.
2020-01-01 12:40:03 -08:00
Jim
4df9ce0cdf
Merge pull request #2251 from jpark37/lut-volume-texture
...
Use volume textures for LUT filter
2019-12-29 11:04:20 -08:00
jpark37
b5b6f24d5b
libobs-d3d11: Increase the frame queue capacity
...
Sometimes Present stalls are seen when multiple swap chains are active.
This seems to fix that.
2019-12-19 10:08:21 -08:00
jpark37
8f6984e345
libobs: Add support for volume textures
...
Also fix some mip calculations along the way.
2019-12-15 14:38:26 -08:00
Jim
fa5454d1b8
Merge pull request #2124 from notr1ch/pci-device-ids
...
Use PCI database IDs instead of string matching for devices
2019-11-22 23:15:55 -08:00
jpark37
1e2542ad6f
libobs-d3d11: Fix null input layout rebuild
...
Don't build input layout without VS inputs. Matches creation logic.
2019-10-17 09:24:13 -07:00
Jim
3e01fdf3e5
Merge pull request #2116 from jpark37/begin-frame
...
libobs: Add gs_begin_frame for duplicators
2019-10-15 22:23:34 -07:00
Jim
3ccc63c14b
Merge pull request #2090 from jpark37/dxgi-refresh-rate
...
Log display refresh rates, and monitor names on D3D11
2019-10-15 10:04:49 -07:00
Jim
65e0fee6d0
Merge pull request #2089 from jpark37/dxgi-driver-version
...
libobs-d3d11: Add GPU driver version to log
2019-10-15 10:03:44 -07:00
Matt Gajownik
51be039cf8
CMake: Build Windows modules with file descriptors
2019-10-15 21:34:12 +11:00
Richard Stanway
323638e704
libobs-d3d11: Use vendor ID instead of string match
2019-10-14 23:06:33 +02:00
Jim
6b08c064f6
Merge pull request #2066 from jpark37/feature-level-baseline
...
Use D3D_FEATURE_LEVEL_10_0 as baseline
2019-10-12 20:55:33 -07:00
Jim
09c7ec487b
Merge pull request #2064 from jpark37/bgra-swap-chain
...
D3D swap chain enhancements
2019-10-12 20:54:33 -07:00
jp9000
dd48a99f03
libobs-d3d11: Fix code styling
2019-10-11 17:40:50 -07:00
jp9000
0f75f963ad
libobs-d3d11: Fix calling convention of loaded func
...
Because this did not have WINAPI (stdcall) specified as the calling
convention on the gdi32 export, caused a crash due to stack corruption
on the 32bit version of OBS.
2019-10-11 17:21:11 -07:00
jpark37
ade65df2aa
libobs: Add gs_begin_frame for duplicators
...
We really shouldn't be resetting duplicator state as part of gs_flush.
gs_begin_scene is not ideal because it is called twice per frame, and
only after duplicators have been ticked. Even though it makes no
user-facing difference, it makes more logical sense to reset at the top
of the frame than the bottom.
2019-10-10 21:06:01 -07:00
Jim
29ca28418f
Merge pull request #2115 from jpark37/duplicator-ref-count
...
Fix duplicator ref count
2019-10-10 21:01:16 -07:00
jpark37
471d752d75
libobs-d3d11: Use unordered_map for duplicator collection
...
Not in love with STL, but lets at least use the semantically-correct
collection. It's also a shame this is a global variable with gross
pre-main allocations, but attaching it to the device instance would
break the interface.
2019-10-10 19:29:15 -07:00
jp9000
b7d094a532
libobs-d3d11: Don't set GPU priority on Intel adapters
2019-10-10 03:03:38 -07:00
jp9000
ec769ef008
libobs-d3d11: Set maximum GPU priority
...
(This commit also modifies the UI)
This solves the issue where OBS would be deprioritized by Windows over
fullscreen games, causing OBS to lag out whereas the games would still
run fine.
2019-10-10 00:51:47 -07:00
jpark37
84d0fdc576
libobs-d3d11: Disable NV12 format support for WARP
...
Speculative fix. Don't have easy ability to reproduce this locally.
2019-10-06 20:30:49 -07:00
jpark37
8d36685599
libobs-d3d11: Add GPU driver version to log
...
DX version string is not the nicest, but no need for IHV library.
2019-10-05 15:03:23 -07:00
jpark37
4b0826cf5d
libobs-d3d11: Log monitor names
2019-10-01 20:00:43 -07:00
jpark37
7fd831e705
libobs-d3d11: Log display refresh rates
2019-09-29 16:24:03 -07:00
jpark37
49b32e5e17
libobs-d3d11: Remove "support" for feature level 9.3
...
Feature Level 9.3 appears to never have actually worked because shaders
are compiled as straight 4_0 instead of 4_0_level_9_3. That being the
case, baseline against 10_0 instead.
2019-09-08 22:41:17 -07:00
jpark37
4da73445c3
graphics: libobs-d3d11: Use DXGI_SWAP_EFFECT_FLIP_DISCARD on Windows 10
...
This is supposed to eliminate a copy by DWM with extra benefits for
borderless fullsceen, which should help the fullscreen projector.
2019-09-06 19:39:42 -07:00
Jim
997698750e
Merge pull request #2051 from jpark37/d3d11-const-ref
...
Minor D3D11 cleanup
2019-08-31 21:15:25 -07:00
jp9000
bf41fd5a6b
libobs: Add graphics API to get graphics object pointer
2019-08-29 12:43:10 -07:00
jpark37
f8572813b1
libobs-d3d11: Print feature level as %x for readability
2019-08-28 21:11:48 -07:00
jpark37
fe02a8286e
libobs-d3d11: Consistent exception catch parameters
...
Fixed missing references, and stray usages of const references instead
of reference to const types. Apply const correctly where applicable.
2019-08-28 21:10:51 -07:00
Jim
ce51fa092c
Merge pull request #1992 from Xaymar/patch-tidy-up-1
...
Fix various clang-tidy and CppCheck warnings.
2019-08-17 08:16:46 -07:00
jpark37
06e01a00ab
libobs-d3d11: Disable NV12 usage for Intel
...
NV12 GPU copies to staging textures for CPU read take a ridiculously
long time on my integrated Intel GPU. Using R8/R8G8 instead seems to be
a huge speed-up.
Intel HD Graphics 530, D3D11 query timings, SetStablePowerState
NV12: ~3268 us (minimum of wild timings)
R8/R8G8: ~781 us (most frequently occurring timing)
2019-08-15 23:02:21 -07:00
jpark37
0e12d8189c
libobs: Add GPU timestamp query support
...
This change only wraps the functionality. I have rough code to exercise
the the query functionality, but that part is not really clean enough to
submit.
2019-07-27 13:31:07 -07:00
Michael Fabian 'Xaymar' Dirks
1154c01266
libobs-d3d11: Catch be reference
2019-07-24 18:26:43 +02:00
Jim
84369f60e4
Merge pull request #1946 from jpark37/ternary-type-conversion
...
libobs-d3d11: Unnecessary type conversions
2019-07-01 02:37:51 -07:00
Richard Stanway
7f1f97a61f
libobs-d3d11: Set texture using initializer list
2019-06-29 01:28:16 +02:00
jpark37
8c4d98195f
libobs-d3d11: Unnecessary type conversions
...
Use raw pointer on both sides of ternary test result to remove
conversions.
2019-06-27 08:55:26 -05:00
Jim
c938ea712b
Merge pull request #1935 from obsproject/clang-format
...
Apply clang-format to the project
2019-06-24 19:41:51 -07:00
Richard Stanway
80e9bb4ec7
libobs-d3d11: Fix missing vertex buffer clear in NV12 check
2019-06-25 00:51:01 +02:00
jp9000
f53df7da64
clang-format: Apply formatting
...
Code submissions have continually suffered from formatting
inconsistencies that constantly have to be addressed. Using
clang-format simplifies this by making code formatting more consistent,
and allows automation of the code formatting so that maintainers can
focus more on the code itself instead of code formatting.
2019-06-23 23:49:10 -07:00