obs-vkcapture
obs-vkcapture copied to clipboard
obs-vkcapture GetMemoryFdKHR failed VK_ERROR_INITIALIZATION_FAILED
Using the proprietary nvidia drivers (515.48.07) on manjaro i3. obs-vkcapture built from latest master.
$> obs-vkcapture vkcube
[obs-vkcapture] Init Vulkan 1.1.3
[obs-vkcapture] CreateInstance
[obs-vkcapture] CreateInstance VK_SUCCESS
Selected GPU 0: NVIDIA GeForce RTX 3090, type: DiscreteGpu
[obs-vkcapture] CreateXcbSurfaceKHR
[obs-vkcapture] CreateDevice
[obs-vkcapture] Injecting VK_KHR_bind_memory2 extension
[obs-vkcapture] Injecting VK_KHR_get_memory_requirements2 extension
[obs-vkcapture] Injecting VK_KHR_external_memory_fd extension
[obs-vkcapture] Injecting VK_EXT_image_drm_format_modifier extension
[obs-vkcapture] CreateDevice VK_SUCCESS
[obs-vkcapture] CreateSwapchainKHR VK_SUCCESS
[obs-vkcapture] GetSwapchainImagesKHR VK_SUCCESS
[obs-vkcapture] GetSwapchainImagesKHR VK_SUCCESS
[obs-vkcapture] Texture VK_FORMAT_B8G8R8A8_UNORM 1259x1387
[obs-vkcapture] Available modifiers:
[obs-vkcapture] 0: modifier:216172782120099861 planes:1
[obs-vkcapture] 1: modifier:216172782120099860 planes:1
[obs-vkcapture] 2: modifier:216172782120099859 planes:1
[obs-vkcapture] 3: modifier:216172782120099858 planes:1
[obs-vkcapture] 4: modifier:216172782120099857 planes:1
[obs-vkcapture] 5: modifier:216172782120099856 planes:1
[obs-vkcapture] 6: modifier:0 planes:1
[obs-vkcapture] GetMemoryFdKHR failed VK_ERROR_INITIALIZATION_FAILED
[obs-vkcapture] ------------------- vulkan capture freed -------------------
[obs-vkcapture] vk_shtex_init failed
With limited insight it seems like this might just be an nvidia driver bug with the newly "supported" extension. I'd be happy to be wrong though, and willing to try potential fixes.
Can you try with OBS_VKCAPTURE_LINEAR=1 obs-vkcapture vkcube
?
Unfortunately same result
$> OBS_VKCAPTURE_LINEAR=1 obs-vkcapture vkcube
[obs-vkcapture] Init Vulkan 1.1.3
[obs-vkcapture] CreateInstance
[obs-vkcapture] CreateInstance VK_SUCCESS
Selected GPU 0: NVIDIA GeForce RTX 3090, type: DiscreteGpu
[obs-vkcapture] CreateXcbSurfaceKHR
[obs-vkcapture] CreateDevice
[obs-vkcapture] Injecting VK_KHR_bind_memory2 extension
[obs-vkcapture] Injecting VK_KHR_get_memory_requirements2 extension
[obs-vkcapture] Injecting VK_KHR_external_memory_fd extension
[obs-vkcapture] Injecting VK_EXT_image_drm_format_modifier extension
[obs-vkcapture] CreateDevice VK_SUCCESS
[obs-vkcapture] CreateSwapchainKHR VK_SUCCESS
[obs-vkcapture] GetSwapchainImagesKHR VK_SUCCESS
[obs-vkcapture] GetSwapchainImagesKHR VK_SUCCESS
[obs-vkcapture] Texture VK_FORMAT_B8G8R8A8_UNORM 1259x450
[obs-vkcapture] Available modifiers:
[obs-vkcapture] 0: modifier:216172782120099861 planes:1
[obs-vkcapture] 1: modifier:216172782120099860 planes:1
[obs-vkcapture] 2: modifier:216172782120099859 planes:1
[obs-vkcapture] 3: modifier:216172782120099858 planes:1
[obs-vkcapture] 4: modifier:216172782120099857 planes:1
[obs-vkcapture] 5: modifier:216172782120099856 planes:1
[obs-vkcapture] 6: modifier:0 planes:1
[obs-vkcapture] GetMemoryFdKHR failed VK_ERROR_INITIALIZATION_FAILED
[obs-vkcapture] ------------------- vulkan capture freed -------------------
[obs-vkcapture] vk_shtex_init failed
Hmm no idea then. Did it break with nvidia driver update, or did it never work for you? I think you need to have modesetting enabled for this to work, but it should be by default I guess.
I only just tried for the first time with this driver. I believe modesetting is on. In dmseg:
[ 2.826662] [drm] Initialized nvidia-drm 0.0.0 20160202 for 0000:11:00.0 on minor 0
$> lsmod | grep nvidia
nvidia_uvm 2752512 0
nvidia_drm 73728 11
nvidia_modeset 1146880 13 nvidia_drm
nvidia 40849408 665 nvidia_uvm,nvidia_modeset
Appreciate you taking a look. Not a big issue for me so I probably won't try to install an older driver, and I'll keep an eye on future driver updates.
Same issue here with Manjaro i3. Using the Nvidia 515.57 drivers. Windows show up in the list on OBS, but the output is always black
Quite literally the same issue here with Manjaro. Using the latest nvidia 515.65.01drivers. Windows show up in the list on OBS, but the output is always black.also on vkcube. specs: AMD Ryzen 7 3700X (16) @ 3.600GHz NVIDIA GeForce GTX 960 the exact error:
[obs-vkcapture] Init Vulkan 1.1.3
Selected GPU 0: NVIDIA GeForce GTX 960, type: DiscreteGpu
[obs-vkcapture] Injecting VK_KHR_bind_memory2 extension
[obs-vkcapture] Injecting VK_KHR_get_memory_requirements2 extension
[obs-vkcapture] Injecting VK_KHR_external_memory_fd extension
[obs-vkcapture] Injecting VK_EXT_image_drm_format_modifier extension
[obs-vkcapture] Texture VK_FORMAT_B8G8R8A8_UNORM 500x493
[obs-vkcapture] GetMemoryFdKHR failed VK_ERROR_INITIALIZATION_FAILED
[obs-vkcapture] ------------------- vulkan capture freed -------------------
[obs-vkcapture] vk_shtex_init failed
You should at least try with latest version, 1.1.3 is pretty old. It probably won't make a difference tho.
my vulkan is on the latest version:
==========
VULKANINFO
==========
Vulkan Instance Version: 1.3.221
Instance Extensions: count = 20
===============================
VK_EXT_acquire_drm_display : extension revision 1
VK_EXT_acquire_xlib_display : extension revision 1
VK_EXT_debug_report : extension revision 10
VK_EXT_debug_utils : extension revision 2
VK_EXT_direct_mode_display : extension revision 1
VK_EXT_display_surface_counter : extension revision 1
VK_KHR_device_group_creation : extension revision 1
VK_KHR_display : extension revision 23
VK_KHR_external_fence_capabilities : extension revision 1
VK_KHR_external_memory_capabilities : extension revision 1
VK_KHR_external_semaphore_capabilities : extension revision 1
VK_KHR_get_display_properties2 : extension revision 1
VK_KHR_get_physical_device_properties2 : extension revision 2
VK_KHR_get_surface_capabilities2 : extension revision 1
VK_KHR_portability_enumeration : extension revision 1
VK_KHR_surface : extension revision 25
VK_KHR_surface_protected_capabilities : extension revision 1
VK_KHR_wayland_surface : extension revision 6
VK_KHR_xcb_surface : extension revision 6
VK_KHR_xlib_surface : extension revision 6
Layers: count = 7
=================
VK_LAYER_MANGOHUD_overlay (Vulkan Hud Overlay) Vulkan version 1.3.0, layer version 1:
Layer Extensions: count = 0
Devices: count = 1
GPU id = 0 (NVIDIA GeForce GTX 960)
Layer-Device Extensions: count = 0
VK_LAYER_NV_optimus (NVIDIA Optimus layer) Vulkan version 1.3.205, layer version 1:
Layer Extensions: count = 0
Devices: count = 1
GPU id = 0 (NVIDIA GeForce GTX 960)
Layer-Device Extensions: count = 0
VK_LAYER_OBS_vkcapture_64 (OBS Linux game capture) Vulkan version 1.2.135, layer version 1:
Layer Extensions: count = 0
Devices: count = 1
GPU id = 0 (NVIDIA GeForce GTX 960)
Layer-Device Extensions: count = 0
VK_LAYER_VALVE_steam_fossilize_32 (Steam Pipeline Caching Layer) Vulkan version 1.3.207, layer version 1:
Layer Extensions: count = 0
Devices: count = 1
GPU id = 0 (NVIDIA GeForce GTX 960)
Layer-Device Extensions: count = 0
VK_LAYER_VALVE_steam_fossilize_64 (Steam Pipeline Caching Layer) Vulkan version 1.3.207, layer version 1:
Layer Extensions: count = 0
Devices: count = 1
GPU id = 0 (NVIDIA GeForce GTX 960)
Layer-Device Extensions: count = 0
VK_LAYER_VALVE_steam_overlay_32 (Steam Overlay Layer) Vulkan version 1.3.207, layer version 1:
Layer Extensions: count = 0
Devices: count = 1
GPU id = 0 (NVIDIA GeForce GTX 960)
Layer-Device Extensions: count = 0
VK_LAYER_VALVE_steam_overlay_64 (Steam Overlay Layer) Vulkan version 1.3.207, layer version 1:
Layer Extensions: count = 0
Devices: count = 1
GPU id = 0 (NVIDIA GeForce GTX 960)
Layer-Device Extensions: count = 0
Presentable Surfaces:
=====================
GPU id : 0 (NVIDIA GeForce GTX 960):
Surface types: count = 2
VK_KHR_xcb_surface
VK_KHR_xlib_surface
Formats: count = 2
SurfaceFormat[0]:
format = FORMAT_B8G8R8A8_UNORM
colorSpace = COLOR_SPACE_SRGB_NONLINEAR_KHR
SurfaceFormat[1]:
format = FORMAT_B8G8R8A8_SRGB
colorSpace = COLOR_SPACE_SRGB_NONLINEAR_KHR
Present Modes: count = 3
PRESENT_MODE_FIFO_KHR
PRESENT_MODE_FIFO_RELAXED_KHR
PRESENT_MODE_IMMEDIATE_KHR
VkSurfaceCapabilitiesKHR:
-------------------------
minImageCount = 2
maxImageCount = 8
currentExtent:
width = 256
height = 256
minImageExtent:
width = 256
height = 256
maxImageExtent:
width = 256
height = 256
maxImageArrayLayers = 1
supportedTransforms: count = 1
SURFACE_TRANSFORM_IDENTITY_BIT_KHR
currentTransform = SURFACE_TRANSFORM_IDENTITY_BIT_KHR
supportedCompositeAlpha: count = 1
COMPOSITE_ALPHA_OPAQUE_BIT_KHR
supportedUsageFlags: count = 6
IMAGE_USAGE_TRANSFER_SRC_BIT
IMAGE_USAGE_TRANSFER_DST_BIT
IMAGE_USAGE_SAMPLED_BIT
IMAGE_USAGE_STORAGE_BIT
IMAGE_USAGE_COLOR_ATTACHMENT_BIT
IMAGE_USAGE_INPUT_ATTACHMENT_BIT
VkSurfaceCapabilities2EXT:
--------------------------
supportedSurfaceCounters:
None
VkSurfaceProtectedCapabilitiesKHR:
----------------------------------
supportsProtected = false
Device Groups:
==============
Group 0:
Properties:
physicalDevices: count = 1
NVIDIA GeForce GTX 960 (ID: 0)
subsetAllocation = 0
Present Capabilities:
NVIDIA GeForce GTX 960 (ID: 0):
Can present images from the following devices: count = 1
NVIDIA GeForce GTX 960 (ID: 0)
Present modes: count = 1
DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHR
Device Properties and Extensions:
=================================
GPU0:
VkPhysicalDeviceProperties:
---------------------------
apiVersion = 4206797 (1.3.205)
driverVersion = 2161131584 (0x80d04040)
vendorID = 0x10de
deviceID = 0x1401
deviceType = PHYSICAL_DEVICE_TYPE_DISCRETE_GPU
deviceName = NVIDIA GeForce GTX 960
pipelineCacheUUID = 8531364b-d566-1fb6-3085-32e1c1864d79
VkPhysicalDeviceLimits:
-----------------------
maxImageDimension1D = 16384
maxImageDimension2D = 16384
maxImageDimension3D = 2048
maxImageDimensionCube = 16384
maxImageArrayLayers = 2048
maxTexelBufferElements = 134217728
maxUniformBufferRange = 65536
maxStorageBufferRange = 4294967295
maxPushConstantsSize = 256
maxMemoryAllocationCount = 4294967295
maxSamplerAllocationCount = 4000
bufferImageGranularity = 0x00000400
sparseAddressSpaceSize = 0xffffffffff
maxBoundDescriptorSets = 32
maxPerStageDescriptorSamplers = 1048576
maxPerStageDescriptorUniformBuffers = 15
maxPerStageDescriptorStorageBuffers = 1048576
maxPerStageDescriptorSampledImages = 1048576
maxPerStageDescriptorStorageImages = 1048576
maxPerStageDescriptorInputAttachments = 1048576
maxPerStageResources = 4294967295
maxDescriptorSetSamplers = 1048576
maxDescriptorSetUniformBuffers = 90
maxDescriptorSetUniformBuffersDynamic = 15
maxDescriptorSetStorageBuffers = 1048576
maxDescriptorSetStorageBuffersDynamic = 16
maxDescriptorSetSampledImages = 1048576
maxDescriptorSetStorageImages = 1048576
maxDescriptorSetInputAttachments = 1048576
maxVertexInputAttributes = 32
maxVertexInputBindings = 32
maxVertexInputAttributeOffset = 2047
maxVertexInputBindingStride = 2048
maxVertexOutputComponents = 128
maxTessellationGenerationLevel = 64
maxTessellationPatchSize = 32
maxTessellationControlPerVertexInputComponents = 128
maxTessellationControlPerVertexOutputComponents = 128
maxTessellationControlPerPatchOutputComponents = 120
maxTessellationControlTotalOutputComponents = 4216
maxTessellationEvaluationInputComponents = 128
maxTessellationEvaluationOutputComponents = 128
maxGeometryShaderInvocations = 32
maxGeometryInputComponents = 128
maxGeometryOutputComponents = 128
maxGeometryOutputVertices = 1024
maxGeometryTotalOutputComponents = 1024
maxFragmentInputComponents = 128
maxFragmentOutputAttachments = 8
maxFragmentDualSrcAttachments = 1
maxFragmentCombinedOutputResources = 4294967295
maxComputeSharedMemorySize = 49152
maxComputeWorkGroupCount: count = 3
2147483647
65535
65535
maxComputeWorkGroupInvocations = 1536
maxComputeWorkGroupSize: count = 3
1536
1024
64
subPixelPrecisionBits = 8
subTexelPrecisionBits = 8
mipmapPrecisionBits = 8
maxDrawIndexedIndexValue = 4294967295
maxDrawIndirectCount = 4294967295
maxSamplerLodBias = 15
maxSamplerAnisotropy = 16
maxViewports = 16
maxViewportDimensions: count = 2
16384
16384
viewportBoundsRange: count = 2
-32768
32768
viewportSubPixelBits = 8
minMemoryMapAlignment = 64
minTexelBufferOffsetAlignment = 0x00000010
minUniformBufferOffsetAlignment = 0x00000100
minStorageBufferOffsetAlignment = 0x00000010
minTexelOffset = -8
maxTexelOffset = 7
minTexelGatherOffset = -32
maxTexelGatherOffset = 31
minInterpolationOffset = -0.5
maxInterpolationOffset = 0.4375
subPixelInterpolationOffsetBits = 4
maxFramebufferWidth = 16384
maxFramebufferHeight = 16384
maxFramebufferLayers = 2048
framebufferColorSampleCounts: count = 4
SAMPLE_COUNT_1_BIT
SAMPLE_COUNT_2_BIT
SAMPLE_COUNT_4_BIT
SAMPLE_COUNT_8_BIT
framebufferDepthSampleCounts: count = 4
SAMPLE_COUNT_1_BIT
SAMPLE_COUNT_2_BIT
SAMPLE_COUNT_4_BIT
SAMPLE_COUNT_8_BIT
framebufferStencilSampleCounts: count = 5
SAMPLE_COUNT_1_BIT
SAMPLE_COUNT_2_BIT
SAMPLE_COUNT_4_BIT
SAMPLE_COUNT_8_BIT
SAMPLE_COUNT_16_BIT
framebufferNoAttachmentsSampleCounts: count = 5
SAMPLE_COUNT_1_BIT
SAMPLE_COUNT_2_BIT
SAMPLE_COUNT_4_BIT
SAMPLE_COUNT_8_BIT
SAMPLE_COUNT_16_BIT
maxColorAttachments = 8
sampledImageColorSampleCounts: count = 4
SAMPLE_COUNT_1_BIT
SAMPLE_COUNT_2_BIT
SAMPLE_COUNT_4_BIT
SAMPLE_COUNT_8_BIT
sampledImageIntegerSampleCounts: count = 4
SAMPLE_COUNT_1_BIT
SAMPLE_COUNT_2_BIT
SAMPLE_COUNT_4_BIT
SAMPLE_COUNT_8_BIT
sampledImageDepthSampleCounts: count = 4
SAMPLE_COUNT_1_BIT
SAMPLE_COUNT_2_BIT
SAMPLE_COUNT_4_BIT
SAMPLE_COUNT_8_BIT
sampledImageStencilSampleCounts: count = 5
SAMPLE_COUNT_1_BIT
SAMPLE_COUNT_2_BIT
SAMPLE_COUNT_4_BIT
SAMPLE_COUNT_8_BIT
SAMPLE_COUNT_16_BIT
storageImageSampleCounts: count = 4
SAMPLE_COUNT_1_BIT
SAMPLE_COUNT_2_BIT
SAMPLE_COUNT_4_BIT
SAMPLE_COUNT_8_BIT
maxSampleMaskWords = 1
timestampComputeAndGraphics = true
timestampPeriod = 1
maxClipDistances = 8
maxCullDistances = 8
maxCombinedClipAndCullDistances = 8
discreteQueuePriorities = 2
pointSizeRange: count = 2
1
2047.94
lineWidthRange: count = 2
1
64
pointSizeGranularity = 0.0625
lineWidthGranularity = 0.0625
strictLines = true
standardSampleLocations = true
optimalBufferCopyOffsetAlignment = 0x00000001
optimalBufferCopyRowPitchAlignment = 0x00000001
nonCoherentAtomSize = 0x00000040
VkPhysicalDeviceSparseProperties:
---------------------------------
residencyStandard2DBlockShape = true
residencyStandard2DMultisampleBlockShape = true
residencyStandard3DBlockShape = true
residencyAlignedMipSize = false
residencyNonResidentStrict = true
VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT:
----------------------------------------------------
advancedBlendMaxColorAttachments = 1
advancedBlendIndependentBlend = false
advancedBlendNonPremultipliedSrcColor = true
advancedBlendNonPremultipliedDstColor = true
advancedBlendCorrelatedOverlap = true
advancedBlendAllOperations = true
VkPhysicalDeviceConservativeRasterizationPropertiesEXT:
-------------------------------------------------------
primitiveOverestimationSize = 0
maxExtraPrimitiveOverestimationSize = 0.75
extraPrimitiveOverestimationSizeGranularity = 0.25
primitiveUnderestimation = false
conservativePointAndLineRasterization = true
degenerateTrianglesRasterized = false
degenerateLinesRasterized = false
fullyCoveredFragmentShaderInputVariable = false
conservativeRasterizationPostDepthCoverage = true
VkPhysicalDeviceCustomBorderColorPropertiesEXT:
-----------------------------------------------
maxCustomBorderColorSamplers = 4000
VkPhysicalDeviceDepthStencilResolveProperties:
----------------------------------------------
supportedDepthResolveModes: count = 4
RESOLVE_MODE_SAMPLE_ZERO_BIT
RESOLVE_MODE_AVERAGE_BIT
RESOLVE_MODE_MIN_BIT
RESOLVE_MODE_MAX_BIT
supportedStencilResolveModes: count = 3
RESOLVE_MODE_SAMPLE_ZERO_BIT
RESOLVE_MODE_MIN_BIT
RESOLVE_MODE_MAX_BIT
independentResolveNone = true
independentResolve = true
VkPhysicalDeviceDescriptorIndexingProperties:
---------------------------------------------
maxUpdateAfterBindDescriptorsInAllPools = 4294967295
shaderUniformBufferArrayNonUniformIndexingNative = true
shaderSampledImageArrayNonUniformIndexingNative = true
shaderStorageBufferArrayNonUniformIndexingNative = true
shaderStorageImageArrayNonUniformIndexingNative = true
shaderInputAttachmentArrayNonUniformIndexingNative = true
robustBufferAccessUpdateAfterBind = true
quadDivergentImplicitLod = true
maxPerStageDescriptorUpdateAfterBindSamplers = 1048576
maxPerStageDescriptorUpdateAfterBindUniformBuffers = 15
maxPerStageDescriptorUpdateAfterBindStorageBuffers = 1048576
maxPerStageDescriptorUpdateAfterBindSampledImages = 1048576
maxPerStageDescriptorUpdateAfterBindStorageImages = 1048576
maxPerStageDescriptorUpdateAfterBindInputAttachments = 1048576
maxPerStageUpdateAfterBindResources = 4294967295
maxDescriptorSetUpdateAfterBindSamplers = 1048576
maxDescriptorSetUpdateAfterBindUniformBuffers = 90
maxDescriptorSetUpdateAfterBindUniformBuffersDynamic = 15
maxDescriptorSetUpdateAfterBindStorageBuffers = 1048576
maxDescriptorSetUpdateAfterBindStorageBuffersDynamic = 16
maxDescriptorSetUpdateAfterBindSampledImages = 1048576
maxDescriptorSetUpdateAfterBindStorageImages = 1048576
maxDescriptorSetUpdateAfterBindInputAttachments = 1048576
VkPhysicalDeviceDiscardRectanglePropertiesEXT:
----------------------------------------------
maxDiscardRectangles = 8
VkPhysicalDeviceDriverProperties:
---------------------------------
driverID = DRIVER_ID_NVIDIA_PROPRIETARY
driverName = NVIDIA
driverInfo = 515.65.01
conformanceVersion:
major = 1
minor = 3
subminor = 1
patch = 0
VkPhysicalDeviceDrmPropertiesEXT:
---------------------------------
hasPrimary = true
hasRender = true
primaryMajor = 226
primaryMinor = 0
renderMajor = 226
renderMinor = 128
VkPhysicalDeviceExternalMemoryHostPropertiesEXT:
------------------------------------------------
minImportedHostPointerAlignment = 0x00001000
VkPhysicalDeviceFloatControlsProperties:
----------------------------------------
denormBehaviorIndependence = SHADER_FLOAT_CONTROLS_INDEPENDENCE_ALL
roundingModeIndependence = SHADER_FLOAT_CONTROLS_INDEPENDENCE_ALL
shaderSignedZeroInfNanPreserveFloat16 = true
shaderSignedZeroInfNanPreserveFloat32 = true
shaderSignedZeroInfNanPreserveFloat64 = true
shaderDenormPreserveFloat16 = false
shaderDenormPreserveFloat32 = false
shaderDenormPreserveFloat64 = false
shaderDenormFlushToZeroFloat16 = false
shaderDenormFlushToZeroFloat32 = false
shaderDenormFlushToZeroFloat64 = false
shaderRoundingModeRTEFloat16 = true
shaderRoundingModeRTEFloat32 = true
shaderRoundingModeRTEFloat64 = true
shaderRoundingModeRTZFloat16 = false
shaderRoundingModeRTZFloat32 = true
shaderRoundingModeRTZFloat64 = true
VkPhysicalDeviceIDProperties:
-----------------------------
deviceUUID = c0b8507b-df49-a374-b4f3-538d21adc927
driverUUID = 0a738663-f3b3-5eff-81dc-f04e4d976dbf
deviceNodeMask = 1
deviceLUIDValid = false
VkPhysicalDeviceInlineUniformBlockProperties:
---------------------------------------------
maxInlineUniformBlockSize = 256
maxPerStageDescriptorInlineUniformBlocks = 32
maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks = 32
maxDescriptorSetInlineUniformBlocks = 32
maxDescriptorSetUpdateAfterBindInlineUniformBlocks = 32
VkPhysicalDeviceLineRasterizationPropertiesEXT:
-----------------------------------------------
lineSubPixelPrecisionBits = 8
VkPhysicalDeviceMaintenance3Properties:
---------------------------------------
maxPerSetDescriptors = 4294967295
maxMemoryAllocationSize = 0xffe00000
VkPhysicalDeviceMaintenance4Properties:
---------------------------------------
maxBufferSize = 0xffffffffffff0000
VkPhysicalDeviceMultiDrawPropertiesEXT:
---------------------------------------
maxMultiDrawCount = 4294967295
VkPhysicalDeviceMultiviewProperties:
------------------------------------
maxMultiviewViewCount = 32
maxMultiviewInstanceIndex = 134217727
VkPhysicalDevicePCIBusInfoPropertiesEXT:
----------------------------------------
pciDomain = 0
pciBus = 10
pciDevice = 0
pciFunction = 0
VkPhysicalDevicePointClippingProperties:
----------------------------------------
pointClippingBehavior = POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY
VkPhysicalDeviceProtectedMemoryProperties:
------------------------------------------
protectedNoFault = false
VkPhysicalDeviceProvokingVertexPropertiesEXT:
---------------------------------------------
provokingVertexModePerPipeline = true
transformFeedbackPreservesTriangleFanProvokingVertex = true
VkPhysicalDevicePushDescriptorPropertiesKHR:
--------------------------------------------
maxPushDescriptors = 32
VkPhysicalDeviceRobustness2PropertiesEXT:
-----------------------------------------
robustStorageBufferAccessSizeAlignment = 0x00000001
robustUniformBufferAccessSizeAlignment = 0x00000100
VkPhysicalDeviceSampleLocationsPropertiesEXT:
---------------------------------------------
sampleLocationSampleCounts: count = 5
SAMPLE_COUNT_1_BIT
SAMPLE_COUNT_2_BIT
SAMPLE_COUNT_4_BIT
SAMPLE_COUNT_8_BIT
SAMPLE_COUNT_16_BIT
maxSampleLocationGridSize:
width = 1
height = 1
sampleLocationCoordinateRange: count = 2
0
0.9375
sampleLocationSubPixelBits = 4
variableSampleLocations = true
VkPhysicalDeviceSamplerFilterMinmaxProperties:
----------------------------------------------
filterMinmaxSingleComponentFormats = true
filterMinmaxImageComponentMapping = true
VkPhysicalDeviceShaderIntegerDotProductProperties:
--------------------------------------------------
integerDotProduct8BitUnsignedAccelerated = true
integerDotProduct8BitSignedAccelerated = true
integerDotProduct8BitMixedSignednessAccelerated = true
integerDotProduct4x8BitPackedUnsignedAccelerated = true
integerDotProduct4x8BitPackedSignedAccelerated = true
integerDotProduct4x8BitPackedMixedSignednessAccelerated = true
integerDotProduct16BitUnsignedAccelerated = false
integerDotProduct16BitSignedAccelerated = false
integerDotProduct16BitMixedSignednessAccelerated = false
integerDotProduct32BitUnsignedAccelerated = false
integerDotProduct32BitSignedAccelerated = false
integerDotProduct32BitMixedSignednessAccelerated = false
integerDotProduct64BitUnsignedAccelerated = false
integerDotProduct64BitSignedAccelerated = false
integerDotProduct64BitMixedSignednessAccelerated = false
integerDotProductAccumulatingSaturating8BitUnsignedAccelerated = true
integerDotProductAccumulatingSaturating8BitSignedAccelerated = true
integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated = true
integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated = true
integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated = true
integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated = true
integerDotProductAccumulatingSaturating16BitUnsignedAccelerated = true
integerDotProductAccumulatingSaturating16BitSignedAccelerated = true
integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated = true
integerDotProductAccumulatingSaturating32BitUnsignedAccelerated = true
integerDotProductAccumulatingSaturating32BitSignedAccelerated = true
integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated = true
integerDotProductAccumulatingSaturating64BitUnsignedAccelerated = true
integerDotProductAccumulatingSaturating64BitSignedAccelerated = true
integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated = true
VkPhysicalDeviceSubgroupProperties:
-----------------------------------
subgroupSize = 32
supportedStages: count = 8
SHADER_STAGE_VERTEX_BIT
SHADER_STAGE_TESSELLATION_CONTROL_BIT
SHADER_STAGE_TESSELLATION_EVALUATION_BIT
SHADER_STAGE_GEOMETRY_BIT
SHADER_STAGE_FRAGMENT_BIT
SHADER_STAGE_COMPUTE_BIT
SHADER_STAGE_ALL_GRAPHICS
SHADER_STAGE_ALL
supportedOperations: count = 9
SUBGROUP_FEATURE_BASIC_BIT
SUBGROUP_FEATURE_VOTE_BIT
SUBGROUP_FEATURE_ARITHMETIC_BIT
SUBGROUP_FEATURE_BALLOT_BIT
SUBGROUP_FEATURE_SHUFFLE_BIT
SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT
SUBGROUP_FEATURE_CLUSTERED_BIT
SUBGROUP_FEATURE_QUAD_BIT
SUBGROUP_FEATURE_PARTITIONED_BIT_NV
quadOperationsInAllStages = true
VkPhysicalDeviceSubgroupSizeControlProperties:
----------------------------------------------
minSubgroupSize = 32
maxSubgroupSize = 32
maxComputeWorkgroupSubgroups = 3145728
requiredSubgroupSizeStages: count = 8
SHADER_STAGE_VERTEX_BIT
SHADER_STAGE_TESSELLATION_CONTROL_BIT
SHADER_STAGE_TESSELLATION_EVALUATION_BIT
SHADER_STAGE_GEOMETRY_BIT
SHADER_STAGE_FRAGMENT_BIT
SHADER_STAGE_COMPUTE_BIT
SHADER_STAGE_ALL_GRAPHICS
SHADER_STAGE_ALL
VkPhysicalDeviceTexelBufferAlignmentProperties:
-----------------------------------------------
storageTexelBufferOffsetAlignmentBytes = 0x00000010
storageTexelBufferOffsetSingleTexelAlignment = true
uniformTexelBufferOffsetAlignmentBytes = 0x00000010
uniformTexelBufferOffsetSingleTexelAlignment = true
VkPhysicalDeviceTimelineSemaphoreProperties:
--------------------------------------------
maxTimelineSemaphoreValueDifference = 2147483647
VkPhysicalDeviceTransformFeedbackPropertiesEXT:
-----------------------------------------------
maxTransformFeedbackStreams = 4
maxTransformFeedbackBuffers = 4
maxTransformFeedbackBufferSize = 0xffffffff
maxTransformFeedbackStreamDataSize = 2048
maxTransformFeedbackBufferDataSize = 512
maxTransformFeedbackBufferDataStride = 2048
transformFeedbackQueries = true
transformFeedbackStreamsLinesTriangles = false
transformFeedbackRasterizationStreamSelect = true
transformFeedbackDraw = true
VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT:
----------------------------------------------------
maxVertexAttribDivisor = 4294967295
VkPhysicalDeviceVulkan11Properties:
-----------------------------------
deviceUUID = c0b8507b-df49-a374-b4f3-538d21adc927
driverUUID = 0a738663-f3b3-5eff-81dc-f04e4d976dbf
deviceNodeMask = 1
deviceLUIDValid = false
subgroupSize = 32
subgroupSupportedStages: count = 8
SHADER_STAGE_VERTEX_BIT
SHADER_STAGE_TESSELLATION_CONTROL_BIT
SHADER_STAGE_TESSELLATION_EVALUATION_BIT
SHADER_STAGE_GEOMETRY_BIT
SHADER_STAGE_FRAGMENT_BIT
SHADER_STAGE_COMPUTE_BIT
SHADER_STAGE_ALL_GRAPHICS
SHADER_STAGE_ALL
subgroupSupportedOperations: count = 9
SUBGROUP_FEATURE_BASIC_BIT
SUBGROUP_FEATURE_VOTE_BIT
SUBGROUP_FEATURE_ARITHMETIC_BIT
SUBGROUP_FEATURE_BALLOT_BIT
SUBGROUP_FEATURE_SHUFFLE_BIT
SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT
SUBGROUP_FEATURE_CLUSTERED_BIT
SUBGROUP_FEATURE_QUAD_BIT
SUBGROUP_FEATURE_PARTITIONED_BIT_NV
subgroupQuadOperationsInAllStages = true
pointClippingBehavior = POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY
maxMultiviewViewCount = 32
maxMultiviewInstanceIndex = 134217727
protectedNoFault = false
maxPerSetDescriptors = 4294967295
maxMemoryAllocationSize = 0xffe00000
VkPhysicalDeviceVulkan12Properties:
-----------------------------------
driverID = DRIVER_ID_NVIDIA_PROPRIETARY
driverName = NVIDIA
driverInfo = 515.65.01
conformanceVersion:
major = 1
minor = 3
subminor = 1
patch = 0
denormBehaviorIndependence = SHADER_FLOAT_CONTROLS_INDEPENDENCE_ALL
roundingModeIndependence = SHADER_FLOAT_CONTROLS_INDEPENDENCE_ALL
shaderSignedZeroInfNanPreserveFloat16 = true
shaderSignedZeroInfNanPreserveFloat32 = true
shaderSignedZeroInfNanPreserveFloat64 = true
shaderDenormPreserveFloat16 = false
shaderDenormPreserveFloat32 = false
shaderDenormPreserveFloat64 = false
shaderDenormFlushToZeroFloat16 = false
shaderDenormFlushToZeroFloat32 = false
shaderDenormFlushToZeroFloat64 = false
shaderRoundingModeRTEFloat16 = true
shaderRoundingModeRTEFloat32 = true
shaderRoundingModeRTEFloat64 = true
shaderRoundingModeRTZFloat16 = false
shaderRoundingModeRTZFloat32 = true
shaderRoundingModeRTZFloat64 = true
maxUpdateAfterBindDescriptorsInAllPools = 4294967295
shaderUniformBufferArrayNonUniformIndexingNative = true
shaderSampledImageArrayNonUniformIndexingNative = true
shaderStorageBufferArrayNonUniformIndexingNative = true
shaderStorageImageArrayNonUniformIndexingNative = true
shaderInputAttachmentArrayNonUniformIndexingNative = true
robustBufferAccessUpdateAfterBind = true
quadDivergentImplicitLod = true
maxPerStageDescriptorUpdateAfterBindSamplers = 1048576
maxPerStageDescriptorUpdateAfterBindUniformBuffers = 15
maxPerStageDescriptorUpdateAfterBindStorageBuffers = 1048576
maxPerStageDescriptorUpdateAfterBindSampledImages = 1048576
maxPerStageDescriptorUpdateAfterBindStorageImages = 1048576
maxPerStageDescriptorUpdateAfterBindInputAttachments = 1048576
maxPerStageUpdateAfterBindResources = 4294967295
maxDescriptorSetUpdateAfterBindSamplers = 1048576
maxDescriptorSetUpdateAfterBindUniformBuffers = 90
maxDescriptorSetUpdateAfterBindUniformBuffersDynamic = 15
maxDescriptorSetUpdateAfterBindStorageBuffers = 1048576
maxDescriptorSetUpdateAfterBindStorageBuffersDynamic = 16
maxDescriptorSetUpdateAfterBindSampledImages = 1048576
maxDescriptorSetUpdateAfterBindStorageImages = 1048576
maxDescriptorSetUpdateAfterBindInputAttachments = 1048576
supportedDepthResolveModes: count = 4
RESOLVE_MODE_SAMPLE_ZERO_BIT
RESOLVE_MODE_AVERAGE_BIT
RESOLVE_MODE_MIN_BIT
RESOLVE_MODE_MAX_BIT
supportedStencilResolveModes: count = 3
RESOLVE_MODE_SAMPLE_ZERO_BIT
RESOLVE_MODE_MIN_BIT
RESOLVE_MODE_MAX_BIT
independentResolveNone = true
independentResolve = true
filterMinmaxSingleComponentFormats = true
filterMinmaxImageComponentMapping = true
maxTimelineSemaphoreValueDifference = 2147483647
framebufferIntegerColorSampleCounts: count = 4
SAMPLE_COUNT_1_BIT
SAMPLE_COUNT_2_BIT
SAMPLE_COUNT_4_BIT
SAMPLE_COUNT_8_BIT
VkPhysicalDeviceVulkan13Properties:
-----------------------------------
minSubgroupSize = 32
maxSubgroupSize = 32
maxComputeWorkgroupSubgroups = 3145728
requiredSubgroupSizeStages: count = 8
SHADER_STAGE_VERTEX_BIT
SHADER_STAGE_TESSELLATION_CONTROL_BIT
SHADER_STAGE_TESSELLATION_EVALUATION_BIT
SHADER_STAGE_GEOMETRY_BIT
SHADER_STAGE_FRAGMENT_BIT
SHADER_STAGE_COMPUTE_BIT
SHADER_STAGE_ALL_GRAPHICS
SHADER_STAGE_ALL
maxInlineUniformBlockSize = 256
maxPerStageDescriptorInlineUniformBlocks = 32
maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks = 32
maxDescriptorSetInlineUniformBlocks = 32
maxDescriptorSetUpdateAfterBindInlineUniformBlocks = 32
maxInlineUniformTotalSize = 1536
integerDotProduct8BitUnsignedAccelerated = true
integerDotProduct8BitSignedAccelerated = true
integerDotProduct8BitMixedSignednessAccelerated = true
integerDotProduct4x8BitPackedUnsignedAccelerated = true
integerDotProduct4x8BitPackedSignedAccelerated = true
integerDotProduct4x8BitPackedMixedSignednessAccelerated = true
integerDotProduct16BitUnsignedAccelerated = false
integerDotProduct16BitSignedAccelerated = false
integerDotProduct16BitMixedSignednessAccelerated = false
integerDotProduct32BitUnsignedAccelerated = false
integerDotProduct32BitSignedAccelerated = false
integerDotProduct32BitMixedSignednessAccelerated = false
integerDotProduct64BitUnsignedAccelerated = false
integerDotProduct64BitSignedAccelerated = false
integerDotProduct64BitMixedSignednessAccelerated = false
integerDotProductAccumulatingSaturating8BitUnsignedAccelerated = true
integerDotProductAccumulatingSaturating8BitSignedAccelerated = true
integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated = true
integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated = true
integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated = true
integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated = true
integerDotProductAccumulatingSaturating16BitUnsignedAccelerated = true
integerDotProductAccumulatingSaturating16BitSignedAccelerated = true
integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated = true
integerDotProductAccumulatingSaturating32BitUnsignedAccelerated = true
integerDotProductAccumulatingSaturating32BitSignedAccelerated = true
integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated = true
integerDotProductAccumulatingSaturating64BitUnsignedAccelerated = true
integerDotProductAccumulatingSaturating64BitSignedAccelerated = true
integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated = true
storageTexelBufferOffsetAlignmentBytes = 0x00000010
storageTexelBufferOffsetSingleTexelAlignment = true
uniformTexelBufferOffsetAlignmentBytes = 0x00000010
uniformTexelBufferOffsetSingleTexelAlignment = true
maxBufferSize = 0xffffffffffff0000
Device Extensions: count = 135
VK_EXT_4444_formats : extension revision 1
VK_EXT_blend_operation_advanced : extension revision 2
VK_EXT_border_color_swizzle : extension revision 1
VK_EXT_buffer_device_address : extension revision 2
VK_EXT_calibrated_timestamps : extension revision 2
VK_EXT_color_write_enable : extension revision 1
VK_EXT_conditional_rendering : extension revision 2
VK_EXT_conservative_rasterization : extension revision 1
VK_EXT_custom_border_color : extension revision 12
VK_EXT_depth_clip_control : extension revision 1
VK_EXT_depth_clip_enable : extension revision 1
VK_EXT_depth_range_unrestricted : extension revision 1
VK_EXT_descriptor_indexing : extension revision 2
VK_EXT_discard_rectangles : extension revision 1
VK_EXT_display_control : extension revision 1
VK_EXT_extended_dynamic_state : extension revision 1
VK_EXT_extended_dynamic_state2 : extension revision 1
VK_EXT_external_memory_dma_buf : extension revision 1
VK_EXT_external_memory_host : extension revision 1
VK_EXT_fragment_shader_interlock : extension revision 1
VK_EXT_global_priority : extension revision 2
VK_EXT_global_priority_query : extension revision 1
VK_EXT_host_query_reset : extension revision 1
VK_EXT_image_drm_format_modifier : extension revision 2
VK_EXT_image_robustness : extension revision 1
VK_EXT_image_view_min_lod : extension revision 1
VK_EXT_index_type_uint8 : extension revision 1
VK_EXT_inline_uniform_block : extension revision 1
VK_EXT_line_rasterization : extension revision 1
VK_EXT_load_store_op_none : extension revision 1
VK_EXT_memory_budget : extension revision 1
VK_EXT_multi_draw : extension revision 1
VK_EXT_pci_bus_info : extension revision 2
VK_EXT_physical_device_drm : extension revision 1
VK_EXT_pipeline_creation_cache_control : extension revision 3
VK_EXT_pipeline_creation_feedback : extension revision 1
VK_EXT_post_depth_coverage : extension revision 1
VK_EXT_primitive_topology_list_restart : extension revision 1
VK_EXT_private_data : extension revision 1
VK_EXT_provoking_vertex : extension revision 1
VK_EXT_queue_family_foreign : extension revision 1
VK_EXT_robustness2 : extension revision 1
VK_EXT_sample_locations : extension revision 1
VK_EXT_sampler_filter_minmax : extension revision 2
VK_EXT_scalar_block_layout : extension revision 1
VK_EXT_separate_stencil_usage : extension revision 1
VK_EXT_shader_atomic_float : extension revision 1
VK_EXT_shader_demote_to_helper_invocation : extension revision 1
VK_EXT_shader_image_atomic_int64 : extension revision 1
VK_EXT_shader_subgroup_ballot : extension revision 1
VK_EXT_shader_subgroup_vote : extension revision 1
VK_EXT_shader_viewport_index_layer : extension revision 1
VK_EXT_subgroup_size_control : extension revision 2
VK_EXT_texel_buffer_alignment : extension revision 1
VK_EXT_tooling_info : extension revision 1
VK_EXT_transform_feedback : extension revision 1
VK_EXT_vertex_attribute_divisor : extension revision 3
VK_EXT_vertex_input_dynamic_state : extension revision 2
VK_EXT_ycbcr_2plane_444_formats : extension revision 1
VK_EXT_ycbcr_image_arrays : extension revision 1
VK_KHR_16bit_storage : extension revision 1
VK_KHR_8bit_storage : extension revision 1
VK_KHR_bind_memory2 : extension revision 1
VK_KHR_buffer_device_address : extension revision 1
VK_KHR_copy_commands2 : extension revision 1
VK_KHR_create_renderpass2 : extension revision 1
VK_KHR_dedicated_allocation : extension revision 3
VK_KHR_depth_stencil_resolve : extension revision 1
VK_KHR_descriptor_update_template : extension revision 1
VK_KHR_device_group : extension revision 4
VK_KHR_draw_indirect_count : extension revision 1
VK_KHR_driver_properties : extension revision 1
VK_KHR_dynamic_rendering : extension revision 1
VK_KHR_external_fence : extension revision 1
VK_KHR_external_fence_fd : extension revision 1
VK_KHR_external_memory : extension revision 1
VK_KHR_external_memory_fd : extension revision 1
VK_KHR_external_semaphore : extension revision 1
VK_KHR_external_semaphore_fd : extension revision 1
VK_KHR_format_feature_flags2 : extension revision 1
VK_KHR_get_memory_requirements2 : extension revision 1
VK_KHR_global_priority : extension revision 1
VK_KHR_image_format_list : extension revision 1
VK_KHR_imageless_framebuffer : extension revision 1
VK_KHR_maintenance1 : extension revision 2
VK_KHR_maintenance2 : extension revision 1
VK_KHR_maintenance3 : extension revision 1
VK_KHR_maintenance4 : extension revision 2
VK_KHR_multiview : extension revision 1
VK_KHR_pipeline_executable_properties : extension revision 1
VK_KHR_present_id : extension revision 1
VK_KHR_present_wait : extension revision 1
VK_KHR_push_descriptor : extension revision 2
VK_KHR_relaxed_block_layout : extension revision 1
VK_KHR_sampler_mirror_clamp_to_edge : extension revision 3
VK_KHR_sampler_ycbcr_conversion : extension revision 14
VK_KHR_separate_depth_stencil_layouts : extension revision 1
VK_KHR_shader_atomic_int64 : extension revision 1
VK_KHR_shader_clock : extension revision 1
VK_KHR_shader_draw_parameters : extension revision 1
VK_KHR_shader_float16_int8 : extension revision 1
VK_KHR_shader_float_controls : extension revision 4
VK_KHR_shader_integer_dot_product : extension revision 1
VK_KHR_shader_non_semantic_info : extension revision 1
VK_KHR_shader_subgroup_extended_types : extension revision 1
VK_KHR_shader_terminate_invocation : extension revision 1
VK_KHR_spirv_1_4 : extension revision 1
VK_KHR_storage_buffer_storage_class : extension revision 1
VK_KHR_swapchain : extension revision 70
VK_KHR_swapchain_mutable_format : extension revision 1
VK_KHR_synchronization2 : extension revision 1
VK_KHR_timeline_semaphore : extension revision 2
VK_KHR_uniform_buffer_standard_layout : extension revision 1
VK_KHR_variable_pointers : extension revision 1
VK_KHR_vulkan_memory_model : extension revision 3
VK_KHR_workgroup_memory_explicit_layout : extension revision 1
VK_KHR_zero_initialize_workgroup_memory : extension revision 1
VK_NVX_multiview_per_view_attributes : extension revision 1
VK_NV_coverage_reduction_mode : extension revision 1
VK_NV_dedicated_allocation : extension revision 1
VK_NV_dedicated_allocation_image_aliasing : extension revision 1
VK_NV_device_diagnostic_checkpoints : extension revision 2
VK_NV_device_diagnostics_config : extension revision 1
VK_NV_device_generated_commands : extension revision 3
VK_NV_fill_rectangle : extension revision 1
VK_NV_fragment_coverage_to_color : extension revision 1
VK_NV_framebuffer_mixed_samples : extension revision 1
VK_NV_geometry_shader_passthrough : extension revision 1
VK_NV_inherited_viewport_scissor : extension revision 1
VK_NV_linear_color_attachment : extension revision 1
VK_NV_sample_mask_override_coverage : extension revision 1
VK_NV_shader_sm_builtins : extension revision 1
VK_NV_shader_subgroup_partitioned : extension revision 1
VK_NV_viewport_array2 : extension revision 1
VK_NV_viewport_swizzle : extension revision 1
VkQueueFamilyProperties:
========================
queueProperties[0]:
-------------------
minImageTransferGranularity = (1,1,1)
queueCount = 16
queueFlags = QUEUE_GRAPHICS | QUEUE_COMPUTE | QUEUE_TRANSFER | QUEUE_SPARSE_BINDING
timestampValidBits = 64
present support = true
VkQueueFamilyGlobalPriorityPropertiesKHR:
-----------------------------------------
priorityCount = 1
priorities: count = 1
QUEUE_GLOBAL_PRIORITY_MEDIUM_KHR
queueProperties[1]:
-------------------
minImageTransferGranularity = (1,1,1)
queueCount = 2
queueFlags = QUEUE_TRANSFER | QUEUE_SPARSE_BINDING
timestampValidBits = 64
present support = false
VkQueueFamilyGlobalPriorityPropertiesKHR:
-----------------------------------------
priorityCount = 1
priorities: count = 1
QUEUE_GLOBAL_PRIORITY_MEDIUM_KHR
VkPhysicalDeviceMemoryProperties:
=================================
memoryHeaps: count = 3
memoryHeaps[0]:
size = 4294967296 (0x100000000) (4.00 GiB)
budget = 3810721792 (0xe3230000) (3.55 GiB)
usage = 0 (0x00000000) (0.00 B)
flags: count = 1
MEMORY_HEAP_DEVICE_LOCAL_BIT
memoryHeaps[1]:
size = 12572768256 (0x2ed653800) (11.71 GiB)
budget = 12572768256 (0x2ed653800) (11.71 GiB)
usage = 0 (0x00000000) (0.00 B)
flags:
None
memoryHeaps[2]:
size = 257949696 (0x0f600000) (246.00 MiB)
budget = 251396096 (0x0efc0000) (239.75 MiB)
usage = 6553600 (0x00640000) (6.25 MiB)
flags: count = 1
MEMORY_HEAP_DEVICE_LOCAL_BIT
memoryTypes: count = 11
memoryTypes[0]:
heapIndex = 1
propertyFlags = 0x0000:
None
usable for:
IMAGE_TILING_OPTIMAL:
None
IMAGE_TILING_LINEAR:
color images
(non-sparse, non-transient)
memoryTypes[1]:
heapIndex = 1
propertyFlags = 0x0000:
None
usable for:
IMAGE_TILING_OPTIMAL:
color images
IMAGE_TILING_LINEAR:
None
memoryTypes[2]:
heapIndex = 1
propertyFlags = 0x0000:
None
usable for:
IMAGE_TILING_OPTIMAL:
FORMAT_D16_UNORM
(non-sparse, non-transient)
IMAGE_TILING_LINEAR:
None
memoryTypes[3]:
heapIndex = 1
propertyFlags = 0x0000:
None
usable for:
IMAGE_TILING_OPTIMAL:
FORMAT_X8_D24_UNORM_PACK32
FORMAT_D24_UNORM_S8_UINT
(non-sparse, non-transient)
IMAGE_TILING_LINEAR:
None
memoryTypes[4]:
heapIndex = 1
propertyFlags = 0x0000:
None
usable for:
IMAGE_TILING_OPTIMAL:
FORMAT_D32_SFLOAT
(non-sparse, non-transient)
IMAGE_TILING_LINEAR:
None
memoryTypes[5]:
heapIndex = 1
propertyFlags = 0x0000:
None
usable for:
IMAGE_TILING_OPTIMAL:
FORMAT_D32_SFLOAT_S8_UINT
(non-sparse, non-transient)
IMAGE_TILING_LINEAR:
None
memoryTypes[6]:
heapIndex = 1
propertyFlags = 0x0000:
None
usable for:
IMAGE_TILING_OPTIMAL:
FORMAT_S8_UINT
(non-sparse, non-transient)
IMAGE_TILING_LINEAR:
None
memoryTypes[7]:
heapIndex = 0
propertyFlags = 0x0001: count = 1
MEMORY_PROPERTY_DEVICE_LOCAL_BIT
usable for:
IMAGE_TILING_OPTIMAL:
color images
FORMAT_D16_UNORM
FORMAT_X8_D24_UNORM_PACK32
FORMAT_D32_SFLOAT
FORMAT_S8_UINT
FORMAT_D24_UNORM_S8_UINT
FORMAT_D32_SFLOAT_S8_UINT
IMAGE_TILING_LINEAR:
color images
(non-sparse, non-transient)
memoryTypes[8]:
heapIndex = 1
propertyFlags = 0x0006: count = 2
MEMORY_PROPERTY_HOST_VISIBLE_BIT
MEMORY_PROPERTY_HOST_COHERENT_BIT
usable for:
IMAGE_TILING_OPTIMAL:
None
IMAGE_TILING_LINEAR:
color images
(non-sparse, non-transient)
memoryTypes[9]:
heapIndex = 1
propertyFlags = 0x000e: count = 3
MEMORY_PROPERTY_HOST_VISIBLE_BIT
MEMORY_PROPERTY_HOST_COHERENT_BIT
MEMORY_PROPERTY_HOST_CACHED_BIT
usable for:
IMAGE_TILING_OPTIMAL:
None
IMAGE_TILING_LINEAR:
color images
(non-sparse, non-transient)
memoryTypes[10]:
heapIndex = 2
propertyFlags = 0x0007: count = 3
MEMORY_PROPERTY_DEVICE_LOCAL_BIT
MEMORY_PROPERTY_HOST_VISIBLE_BIT
MEMORY_PROPERTY_HOST_COHERENT_BIT
usable for:
IMAGE_TILING_OPTIMAL:
None
IMAGE_TILING_LINEAR:
color images
(non-sparse, non-transient)
VkPhysicalDeviceFeatures:
=========================
robustBufferAccess = true
fullDrawIndexUint32 = true
imageCubeArray = true
independentBlend = true
geometryShader = true
tessellationShader = true
sampleRateShading = true
dualSrcBlend = true
logicOp = true
multiDrawIndirect = true
drawIndirectFirstInstance = true
depthClamp = true
depthBiasClamp = true
fillModeNonSolid = true
depthBounds = true
wideLines = true
largePoints = true
alphaToOne = true
multiViewport = true
samplerAnisotropy = true
textureCompressionETC2 = false
textureCompressionASTC_LDR = false
textureCompressionBC = true
occlusionQueryPrecise = true
pipelineStatisticsQuery = true
vertexPipelineStoresAndAtomics = true
fragmentStoresAndAtomics = true
shaderTessellationAndGeometryPointSize = true
shaderImageGatherExtended = true
shaderStorageImageExtendedFormats = true
shaderStorageImageMultisample = true
shaderStorageImageReadWithoutFormat = true
shaderStorageImageWriteWithoutFormat = true
shaderUniformBufferArrayDynamicIndexing = true
shaderSampledImageArrayDynamicIndexing = true
shaderStorageBufferArrayDynamicIndexing = true
shaderStorageImageArrayDynamicIndexing = true
shaderClipDistance = true
shaderCullDistance = true
shaderFloat64 = true
shaderInt64 = true
shaderInt16 = true
shaderResourceResidency = true
shaderResourceMinLod = true
sparseBinding = true
sparseResidencyBuffer = true
sparseResidencyImage2D = true
sparseResidencyImage3D = true
sparseResidency2Samples = true
sparseResidency4Samples = true
sparseResidency8Samples = true
sparseResidency16Samples = true
sparseResidencyAliased = true
variableMultisampleRate = true
inheritedQueries = true
VkPhysicalDevice16BitStorageFeatures:
-------------------------------------
storageBuffer16BitAccess = true
uniformAndStorageBuffer16BitAccess = true
storagePushConstant16 = true
storageInputOutput16 = false
VkPhysicalDevice4444FormatsFeaturesEXT:
---------------------------------------
formatA4R4G4B4 = true
formatA4B4G4R4 = true
VkPhysicalDevice8BitStorageFeatures:
------------------------------------
storageBuffer8BitAccess = true
uniformAndStorageBuffer8BitAccess = true
storagePushConstant8 = true
VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT:
--------------------------------------------------
advancedBlendCoherentOperations = true
VkPhysicalDeviceBorderColorSwizzleFeaturesEXT:
----------------------------------------------
borderColorSwizzle = true
borderColorSwizzleFromImage = false
VkPhysicalDeviceBufferDeviceAddressFeatures:
--------------------------------------------
bufferDeviceAddress = true
bufferDeviceAddressCaptureReplay = true
bufferDeviceAddressMultiDevice = true
VkPhysicalDeviceBufferDeviceAddressFeaturesEXT:
-----------------------------------------------
bufferDeviceAddress = true
bufferDeviceAddressCaptureReplay = true
bufferDeviceAddressMultiDevice = true
VkPhysicalDeviceColorWriteEnableFeaturesEXT:
--------------------------------------------
colorWriteEnable = true
VkPhysicalDeviceConditionalRenderingFeaturesEXT:
------------------------------------------------
conditionalRendering = true
inheritedConditionalRendering = true
VkPhysicalDeviceCustomBorderColorFeaturesEXT:
---------------------------------------------
customBorderColors = true
customBorderColorWithoutFormat = true
VkPhysicalDeviceDepthClipControlFeaturesEXT:
--------------------------------------------
depthClipControl = true
VkPhysicalDeviceDepthClipEnableFeaturesEXT:
-------------------------------------------
depthClipEnable = true
VkPhysicalDeviceDescriptorIndexingFeatures:
-------------------------------------------
shaderInputAttachmentArrayDynamicIndexing = true
shaderUniformTexelBufferArrayDynamicIndexing = true
shaderStorageTexelBufferArrayDynamicIndexing = true
shaderUniformBufferArrayNonUniformIndexing = true
shaderSampledImageArrayNonUniformIndexing = true
shaderStorageBufferArrayNonUniformIndexing = true
shaderStorageImageArrayNonUniformIndexing = true
shaderInputAttachmentArrayNonUniformIndexing = true
shaderUniformTexelBufferArrayNonUniformIndexing = true
shaderStorageTexelBufferArrayNonUniformIndexing = true
descriptorBindingUniformBufferUpdateAfterBind = false
descriptorBindingSampledImageUpdateAfterBind = true
descriptorBindingStorageImageUpdateAfterBind = true
descriptorBindingStorageBufferUpdateAfterBind = true
descriptorBindingUniformTexelBufferUpdateAfterBind = true
descriptorBindingStorageTexelBufferUpdateAfterBind = true
descriptorBindingUpdateUnusedWhilePending = true
descriptorBindingPartiallyBound = true
descriptorBindingVariableDescriptorCount = true
runtimeDescriptorArray = true
VkPhysicalDeviceDynamicRenderingFeatures:
-----------------------------------------
dynamicRendering = true
VkPhysicalDeviceExtendedDynamicState2FeaturesEXT:
-------------------------------------------------
extendedDynamicState2 = true
extendedDynamicState2LogicOp = true
extendedDynamicState2PatchControlPoints = true
VkPhysicalDeviceExtendedDynamicStateFeaturesEXT:
------------------------------------------------
extendedDynamicState = true
VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT:
---------------------------------------------------
fragmentShaderSampleInterlock = true
fragmentShaderPixelInterlock = true
fragmentShaderShadingRateInterlock = true
VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR:
-----------------------------------------------
globalPriorityQuery = true
VkPhysicalDeviceHostQueryResetFeatures:
---------------------------------------
hostQueryReset = true
VkPhysicalDeviceImageRobustnessFeatures:
----------------------------------------
robustImageAccess = true
VkPhysicalDeviceImageViewMinLodFeaturesEXT:
-------------------------------------------
minLod = true
VkPhysicalDeviceImagelessFramebufferFeatures:
---------------------------------------------
imagelessFramebuffer = true
VkPhysicalDeviceIndexTypeUint8FeaturesEXT:
------------------------------------------
indexTypeUint8 = true
VkPhysicalDeviceInlineUniformBlockFeatures:
-------------------------------------------
inlineUniformBlock = true
descriptorBindingInlineUniformBlockUpdateAfterBind = true
VkPhysicalDeviceLineRasterizationFeaturesEXT:
---------------------------------------------
rectangularLines = true
bresenhamLines = true
smoothLines = true
stippledRectangularLines = true
stippledBresenhamLines = true
stippledSmoothLines = true
VkPhysicalDeviceMaintenance4Features:
-------------------------------------
maintenance4 = true
VkPhysicalDeviceMultiDrawFeaturesEXT:
-------------------------------------
multiDraw = true
VkPhysicalDeviceMultiviewFeatures:
----------------------------------
multiview = true
multiviewGeometryShader = true
multiviewTessellationShader = true
VkPhysicalDevicePipelineCreationCacheControlFeatures:
-----------------------------------------------------
pipelineCreationCacheControl = true
VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR:
--------------------------------------------------------
pipelineExecutableInfo = true
VkPhysicalDevicePresentIdFeaturesKHR:
-------------------------------------
presentId = true
VkPhysicalDevicePresentWaitFeaturesKHR:
---------------------------------------
presentWait = true
VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT:
--------------------------------------------------------
primitiveTopologyListRestart = true
primitiveTopologyPatchListRestart = true
VkPhysicalDevicePrivateDataFeatures:
------------------------------------
privateData = true
VkPhysicalDeviceProtectedMemoryFeatures:
----------------------------------------
protectedMemory = false
VkPhysicalDeviceProvokingVertexFeaturesEXT:
-------------------------------------------
provokingVertexLast = true
transformFeedbackPreservesProvokingVertex = true
VkPhysicalDeviceRobustness2FeaturesEXT:
---------------------------------------
robustBufferAccess2 = true
robustImageAccess2 = true
nullDescriptor = true
VkPhysicalDeviceSamplerYcbcrConversionFeatures:
-----------------------------------------------
samplerYcbcrConversion = true
VkPhysicalDeviceScalarBlockLayoutFeatures:
------------------------------------------
scalarBlockLayout = true
VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures:
----------------------------------------------------
separateDepthStencilLayouts = true
VkPhysicalDeviceShaderAtomicFloatFeaturesEXT:
---------------------------------------------
shaderBufferFloat32Atomics = true
shaderBufferFloat32AtomicAdd = true
shaderBufferFloat64Atomics = false
shaderBufferFloat64AtomicAdd = false
shaderSharedFloat32Atomics = true
shaderSharedFloat32AtomicAdd = true
shaderSharedFloat64Atomics = false
shaderSharedFloat64AtomicAdd = false
shaderImageFloat32Atomics = true
shaderImageFloat32AtomicAdd = true
sparseImageFloat32Atomics = true
sparseImageFloat32AtomicAdd = true
VkPhysicalDeviceShaderAtomicInt64Features:
------------------------------------------
shaderBufferInt64Atomics = true
shaderSharedInt64Atomics = true
VkPhysicalDeviceShaderClockFeaturesKHR:
---------------------------------------
shaderSubgroupClock = true
shaderDeviceClock = true
VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures:
-------------------------------------------------------
shaderDemoteToHelperInvocation = true
VkPhysicalDeviceShaderDrawParametersFeatures:
---------------------------------------------
shaderDrawParameters = true
VkPhysicalDeviceShaderFloat16Int8Features:
------------------------------------------
shaderFloat16 = false
shaderInt8 = true
VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT:
--------------------------------------------------
shaderImageInt64Atomics = true
sparseImageInt64Atomics = true
VkPhysicalDeviceShaderIntegerDotProductFeatures:
------------------------------------------------
shaderIntegerDotProduct = true
VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures:
----------------------------------------------------
shaderSubgroupExtendedTypes = true
VkPhysicalDeviceShaderTerminateInvocationFeatures:
--------------------------------------------------
shaderTerminateInvocation = true
VkPhysicalDeviceSubgroupSizeControlFeatures:
--------------------------------------------
subgroupSizeControl = true
computeFullSubgroups = true
VkPhysicalDeviceSynchronization2Features:
-----------------------------------------
synchronization2 = true
VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT:
------------------------------------------------
texelBufferAlignment = true
VkPhysicalDeviceTextureCompressionASTCHDRFeatures:
--------------------------------------------------
textureCompressionASTC_HDR = false
VkPhysicalDeviceTimelineSemaphoreFeatures:
------------------------------------------
timelineSemaphore = true
VkPhysicalDeviceTransformFeedbackFeaturesEXT:
---------------------------------------------
transformFeedback = true
geometryStreams = true
VkPhysicalDeviceUniformBufferStandardLayoutFeatures:
----------------------------------------------------
uniformBufferStandardLayout = true
VkPhysicalDeviceVariablePointersFeatures:
-----------------------------------------
variablePointersStorageBuffer = true
variablePointers = true
VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT:
--------------------------------------------------
vertexAttributeInstanceRateDivisor = true
vertexAttributeInstanceRateZeroDivisor = true
VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT:
---------------------------------------------------
vertexInputDynamicState = true
VkPhysicalDeviceVulkan11Features:
---------------------------------
storageBuffer16BitAccess = true
uniformAndStorageBuffer16BitAccess = true
storagePushConstant16 = true
storageInputOutput16 = false
multiview = true
multiviewGeometryShader = true
multiviewTessellationShader = true
variablePointersStorageBuffer = true
variablePointers = true
protectedMemory = false
samplerYcbcrConversion = true
shaderDrawParameters = true
VkPhysicalDeviceVulkan12Features:
---------------------------------
samplerMirrorClampToEdge = true
drawIndirectCount = true
storageBuffer8BitAccess = true
uniformAndStorageBuffer8BitAccess = true
storagePushConstant8 = true
shaderBufferInt64Atomics = true
shaderSharedInt64Atomics = true
shaderFloat16 = false
shaderInt8 = true
descriptorIndexing = true
shaderInputAttachmentArrayDynamicIndexing = true
shaderUniformTexelBufferArrayDynamicIndexing = true
shaderStorageTexelBufferArrayDynamicIndexing = true
shaderUniformBufferArrayNonUniformIndexing = true
shaderSampledImageArrayNonUniformIndexing = true
shaderStorageBufferArrayNonUniformIndexing = true
shaderStorageImageArrayNonUniformIndexing = true
shaderInputAttachmentArrayNonUniformIndexing = true
shaderUniformTexelBufferArrayNonUniformIndexing = true
shaderStorageTexelBufferArrayNonUniformIndexing = true
descriptorBindingUniformBufferUpdateAfterBind = false
descriptorBindingSampledImageUpdateAfterBind = true
descriptorBindingStorageImageUpdateAfterBind = true
descriptorBindingStorageBufferUpdateAfterBind = true
descriptorBindingUniformTexelBufferUpdateAfterBind = true
descriptorBindingStorageTexelBufferUpdateAfterBind = true
descriptorBindingUpdateUnusedWhilePending = true
descriptorBindingPartiallyBound = true
descriptorBindingVariableDescriptorCount = true
runtimeDescriptorArray = true
samplerFilterMinmax = true
scalarBlockLayout = true
imagelessFramebuffer = true
uniformBufferStandardLayout = true
shaderSubgroupExtendedTypes = true
separateDepthStencilLayouts = true
hostQueryReset = true
timelineSemaphore = true
bufferDeviceAddress = true
bufferDeviceAddressCaptureReplay = true
bufferDeviceAddressMultiDevice = true
vulkanMemoryModel = true
vulkanMemoryModelDeviceScope = true
vulkanMemoryModelAvailabilityVisibilityChains = true
shaderOutputViewportIndex = true
shaderOutputLayer = true
subgroupBroadcastDynamicId = true
VkPhysicalDeviceVulkan13Features:
---------------------------------
robustImageAccess = true
inlineUniformBlock = true
descriptorBindingInlineUniformBlockUpdateAfterBind = true
pipelineCreationCacheControl = true
privateData = true
shaderDemoteToHelperInvocation = true
shaderTerminateInvocation = true
subgroupSizeControl = true
computeFullSubgroups = true
synchronization2 = true
textureCompressionASTC_HDR = false
shaderZeroInitializeWorkgroupMemory = true
dynamicRendering = true
shaderIntegerDotProduct = true
maintenance4 = true
VkPhysicalDeviceVulkanMemoryModelFeatures:
------------------------------------------
vulkanMemoryModel = true
vulkanMemoryModelDeviceScope = true
vulkanMemoryModelAvailabilityVisibilityChains = true
VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR:
---------------------------------------------------------
workgroupMemoryExplicitLayout = true
workgroupMemoryExplicitLayoutScalarBlockLayout = true
workgroupMemoryExplicitLayout8BitAccess = true
workgroupMemoryExplicitLayout16BitAccess = true
VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT:
-------------------------------------------------
ycbcr2plane444Formats = true
VkPhysicalDeviceYcbcrImageArraysFeaturesEXT:
--------------------------------------------
ycbcrImageArrays = true
VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures:
------------------------------------------------------
shaderZeroInitializeWorkgroupMemory = true
but the script uses the old one? :D
$> OBS_VKCAPTURE_LINEAR=1 obs-vkcapture vkcube
[obs-vkcapture] Init Vulkan 1.1.3
Selected GPU 0: NVIDIA GeForce GTX 960, type: DiscreteGpu
[obs-vkcapture] Injecting VK_KHR_bind_memory2 extension
[obs-vkcapture] Injecting VK_KHR_get_memory_requirements2 extension
[obs-vkcapture] Injecting VK_KHR_external_memory_fd extension
[obs-vkcapture] Injecting VK_EXT_image_drm_format_modifier extension
this is on X11
& GNOME 42.2
with Mutter WM
[obs-vkcapture] Init Vulkan 1.1.3
This 1.1.3 means version of obs-vkcapture. And that is old, can you try with latest version?
Yeah the with the newer 1.2 version has literally the same output
$> obs-gamecapture vkcube
[obs-vkcapture] Init Vulkan 1.2.0
Selected GPU 0: NVIDIA GeForce GTX 960, type: DiscreteGpu
[obs-vkcapture] Injecting VK_KHR_bind_memory2 extension
[obs-vkcapture] Injecting VK_KHR_get_memory_requirements2 extension
[obs-vkcapture] Injecting VK_KHR_external_memory_fd extension
[obs-vkcapture] Injecting VK_EXT_image_drm_format_modifier extension
[obs-vkcapture] Texture VK_FORMAT_B8G8R8A8_UNORM 500x500
[obs-vkcapture] GetMemoryFdKHR failed VK_ERROR_INITIALIZATION_FAILED
[obs-vkcapture] ------------------- vulkan capture freed -------------------
[obs-vkcapture] vk_shtex_init failed
Hi, same issue for me with Nvidia Driver 515.57
$ obs-gamecapture vkcube
[obs-vkcapture] Init Vulkan 1.2.0
Selected GPU 0: NVIDIA GeForce RTX 3080, type: DiscreteGpu
[obs-vkcapture] Injecting VK_KHR_bind_memory2 extension
[obs-vkcapture] Injecting VK_KHR_get_memory_requirements2 extension
[obs-vkcapture] Injecting VK_KHR_external_memory_fd extension
[obs-vkcapture] Injecting VK_EXT_image_drm_format_modifier extension
[obs-vkcapture] Texture VK_FORMAT_B8G8R8A8_UNORM 500x500
[obs-vkcapture] GetMemoryFdKHR failed VK_ERROR_INITIALIZATION_FAILED
[obs-vkcapture] ------------------- vulkan capture freed -------------------
[obs-vkcapture] vk_shtex_init failed
I suggest to report this issue to NVIDIA. It used to work at some point in early versions of Wayland enabled driver (515.43.04), so some change in the driver broke it. It works correctly with Mesa drivers (radv, intel) and amdvlk/amd-pro. I also don't have NVIDIA hardware to troubleshoot it myself.
Thanks for the suggestion. Wanna add that I also tested it with the 515.65.01 driver with the same error.
Can someone please try this patch?
diff --git a/src/vklayer.c b/src/vklayer.c
index 4cbfef5..fb48403 100644
--- a/src/vklayer.c
+++ b/src/vklayer.c
@@ -1487,8 +1487,7 @@ static VkResult VKAPI_CALL OBS_CreateDevice(VkPhysicalDevice phy_device,
GETADDR(GetImageSubresourceLayout);
GETADDR(GetMemoryFdKHR);
- dfuncs->GetImageDrmFormatModifierPropertiesEXT = (PFN_vkGetImageDrmFormatModifierPropertiesEXT)
- gdpa(device, "vkGetImageDrmFormatModifierPropertiesEXT");
+ dfuncs->GetImageDrmFormatModifierPropertiesEXT = NULL;
if (!dfuncs->GetImageDrmFormatModifierPropertiesEXT) {
hlog("DRM format modifier support not available");
}
Also I would like to know if you are using X11 or Wayland.
Can someone please try this patch?
I tried it and it fails with the same error:
build % ./obs-gamecapture vkcube
[obs-vkcapture] Init Vulkan 1.2.0
[obs-vkcapture] CreateInstance
[obs-vkcapture] CreateInstance VK_SUCCESS
Selected GPU 0: NVIDIA GeForce GTX 1080, type: DiscreteGpu
[obs-vkcapture] CreateXcbSurfaceKHR
[obs-vkcapture] CreateDevice
[obs-vkcapture] Injecting VK_KHR_bind_memory2 extension
[obs-vkcapture] Injecting VK_KHR_get_memory_requirements2 extension
[obs-vkcapture] Injecting VK_KHR_external_memory_fd extension
[obs-vkcapture] Injecting VK_EXT_image_drm_format_modifier extension
[obs-vkcapture] CreateDevice VK_SUCCESS
[obs-vkcapture] DRM format modifier support not available
[obs-vkcapture] CreateSwapchainKHR VK_SUCCESS
[obs-vkcapture] GetSwapchainImagesKHR VK_SUCCESS
[obs-vkcapture] GetSwapchainImagesKHR VK_SUCCESS
[obs-vkcapture] CreateSwapchainKHR VK_SUCCESS
[obs-vkcapture] GetSwapchainImagesKHR VK_SUCCESS
[obs-vkcapture] GetSwapchainImagesKHR VK_SUCCESS
[obs-vkcapture] DestroySwapchainKHR
[obs-vkcapture] CreateSwapchainKHR VK_SUCCESS
[obs-vkcapture] GetSwapchainImagesKHR VK_SUCCESS
[obs-vkcapture] GetSwapchainImagesKHR VK_SUCCESS
[obs-vkcapture] DestroySwapchainKHR
[obs-vkcapture] CreateSwapchainKHR VK_SUCCESS
[obs-vkcapture] GetSwapchainImagesKHR VK_SUCCESS
[obs-vkcapture] GetSwapchainImagesKHR VK_SUCCESS
[obs-vkcapture] DestroySwapchainKHR
[obs-vkcapture] Texture VK_FORMAT_B8G8R8A8_UNORM 1910x2121
[obs-vkcapture] GetMemoryFdKHR failed VK_ERROR_INITIALIZATION_FAILED
[obs-vkcapture] ------------------- vulkan capture freed -------------------
[obs-vkcapture] vk_shtex_init failed
Tried with OBS_VKCAPTURE_LINEAR=1 as well. Nvidia driver version is 515.76-4 (on arch linux).
Can someone please try this patch?
diff --git a/src/vklayer.c b/src/vklayer.c index 4cbfef5..fb48403 100644 --- a/src/vklayer.c +++ b/src/vklayer.c @@ -1487,8 +1487,7 @@ static VkResult VKAPI_CALL OBS_CreateDevice(VkPhysicalDevice phy_device, GETADDR(GetImageSubresourceLayout); GETADDR(GetMemoryFdKHR); - dfuncs->GetImageDrmFormatModifierPropertiesEXT = (PFN_vkGetImageDrmFormatModifierPropertiesEXT) - gdpa(device, "vkGetImageDrmFormatModifierPropertiesEXT"); + dfuncs->GetImageDrmFormatModifierPropertiesEXT = NULL; if (!dfuncs->GetImageDrmFormatModifierPropertiesEXT) { hlog("DRM format modifier support not available"); }
Also I would like to know if you are using X11 or Wayland.
Didn't seem to work for me. Arch Linux, X11, Nvidia 515.76.
FWIW I had the exact same error before adding the nvidia-drm.modeset=1
kernel parameter, so I would double-check if you really have it enabled.
Can you please try again with current master?
This should be working now, make sure you set nvidia-drm.modeset=1
kernel parameter.