Open ghost opened 3 months ago
Please post logs from the game.
Please post logs from the game.
My apologies. I am capturing Steam Games and was not sure if the variable would work there. This is the first time I am doing this
Closing as inactive.
Inactive?
I asked for game logs, you can get it with adding PROTON_LOG=1
to game launch command on Steam.
I'm facing the same problem since I rebooted. I installed obs-vkcapture a few days ago for testing directly compiling from source, and it worked. I then created a system package from it (Gentoo), installed it, removed all the traces from $HOME
and rebooted. Now, it no longer works, no matter if I restore the previous situation or don't.
Actually, the dropdown never filled with a list of captured windows for me - it just worked. But I think I may be seeing the same problem. Proton log attached.
That's different issue: [obs-vkcapture] missing device extension: VK_EXT_external_memory_dma_buf
On nvidia proprietary you need to set nvidia-drm.modeset=1
kernel option.
Yeah, I figured that may be a problem. But it is set:
# sudo cat /sys/module/nvidia_drm/parameters/modeset
Y
And vulkaninfo
shows it as available:
# vulkaninfo | grep dma
WARNING: [Loader Message] Code 0 : loader_add_layer_properties: 'layers' tag not supported until file version 1.0.1, but /usr/share/vulkan/implicit_layer.d/nvidia_layers.json is reporting version 1
VK_EXT_external_memory_dma_buf : extension revision 1
So something is strange here... Okay let's see:
# vulkaninfo | egrep -e "(^GPU|dma)"
WARNING: [Loader Message] Code 0 : loader_add_layer_properties: 'layers' tag not supported until file version 1.0.1, but /usr/share/vulkan/implicit_layer.d/nvidia_layers.json is reporting version 1
GPU id : 0 (NVIDIA GeForce RTX 3080 Ti):
GPU id : 1 (Intel(R) UHD Graphics 770 (ADL-S GT1)):
GPU0:
GPU1:
VK_EXT_external_memory_dma_buf : extension revision 1
Okay, so this is on the iGPU only... (which has no monitors attached). So I'll look into the modeset thing. Not sure what happened during reboot.
Thanks for your prompt response. :-)
UPDATE:
# from dmesg:
[ 7.358344] [drm:nv_drm_exit [nvidia_drm]] *ERROR* [nvidia-drm] [GPU ID 0x00000100] Failed to allocate NvKmsKapiDevice
[ 7.358431] [drm:nv_drm_register_drm_device [nvidia_drm]] *ERROR* [nvidia-drm] [GPU ID 0x00000100] Failed to register device
UPDATE 2:
One reboot later, drm registers successful again, capturing works, and I can even select windows this time. Crazy tech... NVIDIA needs to fix their stuff, maybe with 560 which has the kernel-driver open-sourced...
I am facing the same issue. The window dropdown has only one option Capture any Window
and it never captures anything.
My system is Arch Linux + KDE Plasma 6. OBS is installed via pacman -S obs-studio
and AUR obs-vkcapture-git
.
Hardware is AMD cpu & gpu.
OBS log:
11:34:20.294: Using EGL/X11
11:34:20.294: CPU Name: AMD Ryzen 7 7840HS w/ Radeon 780M Graphics
11:34:20.294: CPU Speed: 1341.710MHz
11:34:20.295: Physical Cores: 8, Logical Cores: 16
11:34:20.295: Physical Memory: 59956MB Total, 41810MB Free
11:34:20.295: Kernel Version: Linux 6.10.6-arch1-1
11:34:20.295: Distribution: "EndeavourOS" Unknown
11:34:20.295: Desktop Environment: KDE (KDE)
11:34:20.295: Session Type: x11
11:34:20.295: Window System: X11.0, Vendor: The X.Org Foundation, Version: 1.21.1
11:34:20.297: Qt Version: 6.7.2 (runtime), 6.7.2 (compiled)
11:34:20.297: Portable mode: false
11:34:20.393: OBS 30.2.1-1 (linux)
11:34:20.393: ---------------------------------
11:34:20.394: ---------------------------------
11:34:20.394: audio settings reset:
11:34:20.394: samples per sec: 48000
11:34:20.394: speakers: 2
11:34:20.394: max buffering: 21 milliseconds
11:34:20.394: buffering type: fixed
11:34:20.403: ---------------------------------
11:34:20.403: Initializing OpenGL...
11:34:20.416: Enabling fixed audio buffering, total audio buffering is now 21 milliseconds
11:34:20.481: Loading up OpenGL on adapter AMD AMD Radeon 780M (radeonsi, gfx1103_r1, LLVM 18.1.8, DRM 3.57, 6.10.6-arch1-1)
11:34:20.481: OpenGL loaded successfully, version 4.6 (Core Profile) Mesa 24.1.6-arch1.1, shading language 4.60
11:34:20.531: ---------------------------------
11:34:20.531: video settings reset:
11:34:20.531: base resolution: 1920x1080
11:34:20.531: output resolution: 1280x720
11:34:20.531: downscale filter: Bicubic
11:34:20.531: fps: 60/1
11:34:20.531: format: NV12
11:34:20.531: YUV mode: sRGB/Partial
11:34:20.531: NV12 texture support enabled
11:34:20.531: P010 texture support not available
11:34:20.534: Audio monitoring device:
11:34:20.534: name: Default
11:34:20.534: id: default
11:34:20.534: ---------------------------------
11:34:20.551: Failed to load 'en-US' text for module: 'decklink-captions.so'
11:34:20.572: Failed to load 'en-US' text for module: 'decklink-output-ui.so'
11:34:20.588: A DeckLink iterator could not be created. The DeckLink drivers may not be installed
11:34:20.589: Failed to initialize module 'decklink.so'
11:34:20.878: [pipewire] Available capture sources:
11:34:20.878: [pipewire] - Monitor source
11:34:20.878: [pipewire] - Window source
11:34:20.920: v4l2loopback not installed, virtual camera not registered
11:34:20.940: [linux-vkcapture] plugin loaded successfully (version 1.5.1)
11:34:21.071: VAAPI: API version 1.22
11:34:21.076: FFmpeg VAAPI H264 encoding supported
11:34:21.091: FFmpeg VAAPI AV1 encoding supported
11:34:21.108: FFmpeg VAAPI HEVC encoding supported
11:34:21.370: [Move Transition] loaded version 2.12.0
11:34:21.370: ---------------------------------
11:34:21.370: Loaded Modules:
11:34:21.370: move-transition.so
11:34:21.370: linux-pipewire-audio.so
11:34:21.370: text-freetype2.so
11:34:21.370: rtmp-services.so
11:34:21.370: obs-x264.so
11:34:21.370: obs-webrtc.so
11:34:21.370: obs-vst.so
11:34:21.370: obs-transitions.so
11:34:21.370: obs-qsv11.so
11:34:21.370: obs-outputs.so
11:34:21.370: obs-libfdk.so
11:34:21.370: obs-filters.so
11:34:21.370: obs-ffmpeg.so
11:34:21.370: linux-vkcapture.so
11:34:21.370: linux-v4l2.so
11:34:21.370: linux-pulseaudio.so
11:34:21.370: linux-pipewire.so
11:34:21.370: linux-jack.so
11:34:21.370: linux-capture.so
11:34:21.370: linux-alsa.so
11:34:21.370: image-source.so
11:34:21.370: frontend-tools.so
11:34:21.370: decklink-output-ui.so
11:34:21.370: decklink-captions.so
11:34:21.370: ---------------------------------
11:34:21.370: ---------------------------------
11:34:21.370: Available Encoders:
11:34:21.370: Video Encoders:
11:34:21.370: - ffmpeg_svt_av1 (SVT-AV1)
11:34:21.370: - ffmpeg_aom_av1 (AOM AV1)
11:34:21.370: - ffmpeg_vaapi_tex (FFmpeg VAAPI H.264)
11:34:21.370: - av1_ffmpeg_vaapi_tex (FFmpeg VAAPI AV1)
11:34:21.370: - hevc_ffmpeg_vaapi_tex (FFmpeg VAAPI HEVC)
11:34:21.370: - obs_x264 (x264)
11:34:21.370: Audio Encoders:
11:34:21.370: - ffmpeg_aac (FFmpeg AAC)
11:34:21.370: - ffmpeg_opus (FFmpeg Opus)
11:34:21.370: - ffmpeg_pcm_s16le (FFmpeg PCM (16-bit))
11:34:21.370: - ffmpeg_pcm_s24le (FFmpeg PCM (24-bit))
11:34:21.370: - ffmpeg_pcm_f32le (FFmpeg PCM (32-bit float))
11:34:21.370: - ffmpeg_alac (FFmpeg ALAC (24-bit))
11:34:21.370: - ffmpeg_flac (FFmpeg FLAC (16-bit))
11:34:21.370: - libfdk_aac (libfdk AAC)
11:34:21.370: ==== Startup complete ===============================================
11:34:21.397: All scene data cleared
11:34:21.397: ------------------------------------------------
11:34:21.401: pulse-input: Server name: 'PulseAudio (on PipeWire 1.2.3) 15.0.0'
11:34:21.402: pulse-input: An error occurred while getting the source info!
11:34:21.402: [Loaded global audio device]: 'Mic/Aux'
11:34:21.402: - filter: 'Audio Move (Off)' (audio_move_filter)
11:34:21.402: - filter: 'Audio Move (On)' (audio_move_filter)
11:34:21.402: - filter: 'Noise Gate' (noise_gate_filter)
11:34:21.402: pulse-input: Server name: 'PulseAudio (on PipeWire 1.2.3) 15.0.0'
11:34:21.402: pulse-input: An error occurred while getting the source info!
11:34:21.404: pulse-am: Server name: 'PulseAudio (on PipeWire 1.2.3) 15.0.0'
11:34:21.404: pulse-am: Audio format: s32le, 48000 Hz, 2 channels
11:34:21.404: pulse-am: Started Monitoring in 'alsa_output.pci-0000_c4_00.6.analog-stereo'
11:34:21.404: [Loaded global audio device]: 'Mic/Aux 4'
11:34:21.404: - monitoring: monitor and output
11:34:21.405: v4l2-input: Start capture from /dev/video0
11:34:21.405: v4l2-input: Unable to open device
11:34:21.405: v4l2-input: Initialization failed, errno: No such file or directory
11:34:21.405: Source ID 'browser_source' not found
11:34:21.405: Failed to create source 'Twitch Chat'!
11:34:21.408: [pipewire] Created stream 0x5a83119aab60
11:34:21.412: [pipewire] Created app capture sink 90 with 2 channels and position FL,FR
11:34:21.469: [pipewire] 0x5a83119aab60 Got format: rate 48000 - channels 2 - format 8
11:34:21.487: Switched to scene 'Scene'
11:34:21.487: ------------------------------------------------
11:34:21.487: Loaded scenes:
11:34:21.487: - scene 'Scene':
11:34:21.487: - source: 'Image 2' (image_source)
11:34:21.487: - source: 'Application Audio Capture (PipeWire)' (pipewire_audio_application_capture)
11:34:21.487: - source: 'Game Capture' (vkcapture-source)
11:34:21.487: - source: 'GC553' (v4l2_input)
11:34:21.487: - source: 'Twitch Chat' (browser_source)
11:34:21.487: - source: 'Sekai_talk' (image_source)
11:34:21.487: - filter: 'Color Correction' (color_filter_v2)
11:34:21.487: - source: 'Sekai_mute' (image_source)
11:34:21.487: - filter: 'Color Correction' (color_filter_v2)
11:34:21.487: - filter: 'Move Source' (move_source_filter)
11:34:21.487: - filter: 'Move Source 2' (move_source_filter)
11:34:21.487: ------------------------------------------------
11:41:12.351: ==== Shutting down ==================================================
11:41:12.360: pulse-am: Stopped Monitoring in 'alsa_output.pci-0000_c4_00.6.analog-stereo'
11:41:12.360: pulse-am: Got 0 packets with 0 frames
11:41:12.367: [linux-vkcapture] destroy
11:41:12.409: All scene data cleared
11:41:12.409: ------------------------------------------------
11:41:12.472: [linux-vkcapture] plugin unloaded
11:41:12.482: [Scripting] Total detached callbacks: 0
11:41:12.482: Freeing OBS context data
11:41:12.528: == Profiler Results =============================
11:41:12.528: run_program_init: 1544.36 ms
11:41:12.528: ┣OBSApp::AppInit: 18.812 ms
11:41:12.528: ┃ ┗OBSApp::InitLocale: 1.294 ms
11:41:12.528: ┗OBSApp::OBSInit: 1245.6 ms
11:41:12.528: ┣obs_startup: 3.013 ms
11:41:12.528: ┗OBSBasic::OBSInit: 1145.9 ms
11:41:12.528: ┣OBSBasic::InitBasicConfig: 0.179 ms
11:41:12.528: ┣OBSBasic::ResetAudio: 0.451 ms
11:41:12.528: ┣OBSBasic::ResetVideo: 139.652 ms
11:41:12.528: ┃ ┗obs_init_graphics: 136.487 ms
11:41:12.528: ┃ ┗shader compilation: 48.636 ms
11:41:12.528: ┣OBSBasic::InitOBSCallbacks: 0.008 ms
11:41:12.528: ┣OBSBasic::InitHotkeys: 0.036 ms
11:41:12.529: ┣obs_load_all_modules2: 836.263 ms
11:41:12.529: ┃ ┣obs_init_module(decklink-captions.so): 0.001 ms
11:41:12.529: ┃ ┣obs_init_module(decklink-output-ui.so): 0 ms
11:41:12.529: ┃ ┣obs_init_module(decklink.so): 0.44 ms
11:41:12.529: ┃ ┣obs_init_module(frontend-tools.so): 119.272 ms
11:41:12.529: ┃ ┣obs_init_module(image-source.so): 0.015 ms
11:41:12.529: ┃ ┣obs_init_module(linux-alsa.so): 0.004 ms
11:41:12.529: ┃ ┣obs_init_module(linux-capture.so): 0.932 ms
11:41:12.529: ┃ ┣obs_init_module(linux-jack.so): 0.004 ms
11:41:12.529: ┃ ┣obs_init_module(linux-pipewire.so): 20.593 ms
11:41:12.529: ┃ ┣obs_init_module(linux-pulseaudio.so): 0.028 ms
11:41:12.529: ┃ ┣obs_init_module(linux-v4l2.so): 5.442 ms
11:41:12.529: ┃ ┣obs_init_module(linux-vkcapture.so): 0.278 ms
11:41:12.529: ┃ ┣obs_init_module(obs-ffmpeg.so): 55.714 ms
11:41:12.529: ┃ ┃ ┗nvenc_check: 2.064 ms
11:41:12.529: ┃ ┣obs_init_module(obs-filters.so): 0.041 ms
11:41:12.529: ┃ ┣obs_init_module(obs-libfdk.so): 0.003 ms
11:41:12.529: ┃ ┣obs_init_module(obs-outputs.so): 0.009 ms
11:41:12.529: ┃ ┣obs_init_module(obs-qsv11.so): 41.338 ms
11:41:12.529: ┃ ┣obs_init_module(obs-transitions.so): 0.012 ms
11:41:12.529: ┃ ┣obs_init_module(obs-vst.so): 0.005 ms
11:41:12.529: ┃ ┣obs_init_module(obs-webrtc.so): 0.007 ms
11:41:12.529: ┃ ┣obs_init_module(obs-x264.so): 0.007 ms
11:41:12.529: ┃ ┣obs_init_module(rtmp-services.so): 0.519 ms
11:41:12.529: ┃ ┣obs_init_module(text-freetype2.so): 0.016 ms
11:41:12.529: ┃ ┣obs_init_module(linux-pipewire-audio.so): 0.027 ms
11:41:12.529: ┃ ┗obs_init_module(move-transition.so): 0.095 ms
11:41:12.529: ┣OBSBasic::InitService: 1.642 ms
11:41:12.529: ┣OBSBasic::ResetOutputs: 0.29 ms
11:41:12.529: ┣OBSBasic::CreateHotkeys: 0.023 ms
11:41:12.529: ┣OBSBasic::InitPrimitives: 0.057 ms
11:41:12.529: ┗OBSBasic::Load: 120.407 ms
11:41:12.529: obs_hotkey_thread(25 ms): min=0.057 ms, median=0.234 ms, max=12.722 ms, 99th percentile=1.079 ms, 100% below 25 ms
11:41:12.529: audio_thread(Audio): min=0.011 ms, median=0.042 ms, max=0.876 ms, 99th percentile=0.222 ms
11:41:12.529: obs_graphics_thread(16.6667 ms): min=0.086 ms, median=1.289 ms, max=68.478 ms, 99th percentile=2.996 ms, 99.9919% below 16.667 ms
11:41:12.529: ┣tick_sources: min=0 ms, median=0.04 ms, max=68.219 ms, 99th percentile=0.125 ms
11:41:12.529: ┣output_frame: min=0.063 ms, median=0.265 ms, max=7.707 ms, 99th percentile=0.571 ms
11:41:12.529: ┃ ┗gs_context(video->graphics): min=0.063 ms, median=0.264 ms, max=7.706 ms, 99th percentile=0.57 ms
11:41:12.529: ┃ ┣render_video: min=0.007 ms, median=0.05 ms, max=0.311 ms, 99th percentile=0.151 ms
11:41:12.529: ┃ ┃ ┗render_main_texture: min=0.003 ms, median=0.043 ms, max=0.293 ms, 99th percentile=0.133 ms
11:41:12.529: ┃ ┗gs_flush: min=0.001 ms, median=0.006 ms, max=0.766 ms, 99th percentile=0.032 ms
11:41:12.529: ┗render_displays: min=0.001 ms, median=0.943 ms, max=14.462 ms, 99th percentile=2.389 ms
11:41:12.529: =================================================
11:41:12.529: == Profiler Time Between Calls ==================
11:41:12.529: obs_hotkey_thread(25 ms): min=25.116 ms, median=25.32 ms, max=37.799 ms, 78.4152% within ±2% of 25 ms (0% lower, 21.5848% higher)
11:41:12.529: obs_graphics_thread(16.6667 ms): min=9.129 ms, median=16.667 ms, max=68.483 ms, 98.0979% within ±2% of 16.667 ms (0.959126% lower, 0.942938% higher)
11:41:12.529: =================================================
11:41:12.545: Number of memory leaks: 0
Game log (tried PAC-MAN 256 with PROTON_LOG=1 OBS_VKCAPTURE_QUIET=0 OBS_VKCAPTURE=1 %command%
as launch options)
I also tried a non-steam game
OBS_VKCAPTURE_QUIET=0 OBS_VKCAPTURE=1 /usr/bin/flatpak run --branch=stable --arch=x86_64 --command=SpaceCadetPinball com.github.k4zmu2a.spacecadetpinball
console output
Game version: 2.1.0
Command line:
Compiled with: SDL 2.28.5; SDL_mixer 2.6.3; ImGui 1.89.2 WIP HW
Using SDL renderer: opengl
Loading game from: /app/bin/PINBALL.DAT
SDL Error: Couldn't open timidity.cfg
Both games won't be detected by the OBS plugin.
vulkaninfo
❯ vulkaninfo | grep dma
VK_EXT_external_memory_dma_buf : extension revision 1
VK_EXT_external_memory_dma_buf : extension revision 1
The log was captured in KDE X11 session, but I'm getting the same issue in Wayland as well.
Is there anything else I should check?
PAC-MAN 256 is 32-bit game, and the pinball probably too. You need to also install 32-bit vkcapture.
Thanks, appreciate your quick response. PAC-MAN 256 is working after installing AUR lib32-obs-vkcapture
.
For the pinball game it still doesn't work, although that was just a quick test to see if the issue is specific to Steam or not so I'm fine with it for now.
For capturing flatpak apps you need to install vkcapture flatpak, please se README.
Describe the bug when adding the "Game Capture" Source vis the sources list, there is no option labeled "Select Window" appears in the source properties.
Screenshots or video
System (please complete the following information):
OBS log:
Game log: