obs-vkcapture icon indicating copy to clipboard operation
obs-vkcapture copied to clipboard

[X11] My cursor is not captured in game

Open Telokis opened this issue 1 month ago • 0 comments

Describe the bug Cursor not captured in game. In either Factorio (through Steam) or Minecraft (through PrismLauncher).
I didn't try any other game yet. They both show properly in OBS but with no cursor.

System (please complete the following information):

  • OS: Linux Mint 22.2
  • GPU: NVIDIA 3080Ti
  • Mesa version: How to check?
  • obs-vkcapture version: Commit 65c83d0ba3e8d554684aad83975372b7c507753b (Wed Sep 17 17:34:51 2025 +0200)

OBS log:

13:02:42.123: Using EGL/X11
13:02:42.123: CPU Name: AMD Ryzen 9 7950X 16-Core Processor
13:02:42.123: CPU Speed: 4938.433MHz
13:02:42.123: Physical Cores: 16, Logical Cores: 32
13:02:42.123: Physical Memory: 31222MB Total, 9272MB Free
13:02:42.124: Kernel Version: Linux 6.8.0-87-generic
13:02:42.124: Distribution: "Linux Mint" "22.2"
13:02:42.124: Desktop Environment: X-Cinnamon (cinnamon)
13:02:42.124: Session Type: x11
13:02:42.124: Window System: X11.0, Vendor: The X.Org Foundation, Version: 1.21.1
13:02:42.125: Qt Version: 6.4.2 (runtime), 6.4.2 (compiled)
13:02:42.125: Portable mode: false
13:02:42.161: OBS 30.0.2.1-3build1 (linux)
13:02:42.161: ---------------------------------
13:02:42.166: ---------------------------------
13:02:42.166: audio settings reset:
13:02:42.166: 	samples per sec: 48000
13:02:42.166: 	speakers:        2
13:02:42.166: 	max buffering:   960 milliseconds
13:02:42.166: 	buffering type:  dynamically increasing
13:02:42.167: ---------------------------------
13:02:42.167: Initializing OpenGL...
13:02:42.315: Loading up OpenGL on adapter NVIDIA Corporation NVIDIA GeForce RTX 3080 Ti/PCIe/SSE2
13:02:42.315: OpenGL loaded successfully, version 3.3.0 NVIDIA 580.95.05, shading language 3.30 NVIDIA via Cg compiler
13:02:42.333: ---------------------------------
13:02:42.333: video settings reset:
13:02:42.333: 	base resolution:   2560x1440
13:02:42.333: 	output resolution: 1920x1080
13:02:42.333: 	downscale filter:  Bicubic
13:02:42.333: 	fps:               60/1
13:02:42.333: 	format:            NV12
13:02:42.333: 	YUV mode:          Rec. 709/Partial
13:02:42.333: NV12 texture support not available
13:02:42.333: P010 texture support not available
13:02:42.369: Audio monitoring device:
13:02:42.369: 	name: Default
13:02:42.369: 	id: default
13:02:42.369: ---------------------------------
13:02:42.378: Failed to load 'en-US' text for module: 'decklink-captions.so'
13:02:42.385: Failed to load 'en-US' text for module: 'decklink-output-ui.so'
13:02:42.393: A DeckLink iterator could not be created.  The DeckLink drivers may not be installed
13:02:42.393: Failed to initialize module 'decklink.so'
13:02:42.459: [pipewire] No captures available
13:02:42.485: [linux-vkcapture] plugin loaded successfully (version 1.5.3)
13:02:42.528: NVENC supported
13:02:42.528: VAAPI: Failed to initialize display in vaapi_device_h264_supported
13:02:42.563: VAAPI: API version 1.20
13:02:42.564: FFmpeg VAAPI H264 encoding supported
13:02:42.564: VAAPI: Failed to initialize display in vaapi_device_hevc_supported
13:02:42.571: FFmpeg VAAPI HEVC encoding supported
13:02:42.611: [obs-websocket] [obs_module_load] you can haz websockets (Version: 5.3.4 | RPC Version: 1)
13:02:42.611: [obs-websocket] [obs_module_load] Qt version (compile-time): 6.4.2 | Qt version (run-time): 6.4.2
13:02:42.611: [obs-websocket] [obs_module_load] Linked ASIO Version: 102801
13:02:42.615: [obs-websocket] [obs_module_load] Module loaded.
13:02:42.651: [vlc-video]: VLC 3.0.20 Vetinari found, VLC video source enabled
13:02:42.651: ---------------------------------
13:02:42.651:   Loaded Modules:
13:02:42.651:     vlc-video.so
13:02:42.651:     text-freetype2.so
13:02:42.651:     rtmp-services.so
13:02:42.651:     obs-x264.so
13:02:42.651:     obs-websocket.so
13:02:42.651:     obs-transitions.so
13:02:42.651:     obs-outputs.so
13:02:42.651:     obs-filters.so
13:02:42.651:     obs-ffmpeg.so
13:02:42.651:     linux-vkcapture.so
13:02:42.651:     linux-v4l2.so
13:02:42.651:     linux-pulseaudio.so
13:02:42.651:     linux-pipewire.so
13:02:42.651:     linux-jack.so
13:02:42.651:     linux-capture.so
13:02:42.651:     linux-alsa.so
13:02:42.651:     image-source.so
13:02:42.651:     frontend-tools.so
13:02:42.651:     decklink-output-ui.so
13:02:42.651:     decklink-captions.so
13:02:42.651: ---------------------------------
13:02:42.651: [obs-websocket] [obs_module_post_load] WebSocket server is enabled, starting...
13:02:42.652: [obs-websocket] [WebSocketServer::Start] Not locked to IPv4 bindings
13:02:42.652: [obs-websocket] [WebSocketServer::ServerRunner] IO thread started.
13:02:42.654: [obs-websocket] [WebSocketServer::Start] Server started successfully on port 4455. Possible connect address: 127.0.0.1
13:02:42.655: QWidget::setTabOrder: 'first' and 'second' must be in the same window
13:02:42.655: ==== Startup complete ===============================================
13:02:42.699: All scene data cleared
13:02:42.700: ------------------------------------------------
13:02:42.703: pulse-input: Server name: 'PulseAudio (on PipeWire 1.0.5) 15.0.0'
13:02:42.703: pulse-input: Audio format: s24le, 48000 Hz, 2 channels
13:02:42.703: pulse-input: Sample format s24le not supported by OBS,using float32le instead for recording
13:02:42.703: pulse-input: Started recording from 'alsa_input.usb-Generic_USB_Audio-00.HiFi_7_1__hw_Audio_2__source' (default)
13:02:42.703: [Loaded global audio device]: 'Mic/Aux'
13:02:42.703: pulse-input: Server name: 'PulseAudio (on PipeWire 1.0.5) 15.0.0'
13:02:42.703: pulse-input: Audio format: float32le, 48000 Hz, 2 channels
13:02:42.703: pulse-input: Started recording from 'discord_sink.monitor'
13:02:42.703: pulse-input: Server name: 'PulseAudio (on PipeWire 1.0.5) 15.0.0'
13:02:42.703: pulse-input: Audio format: float32le, 48000 Hz, 2 channels
13:02:42.703: pulse-input: Started recording from 'game_sink.monitor'
13:02:42.704: pulse-input: Server name: 'PulseAudio (on PipeWire 1.0.5) 15.0.0'
13:02:42.704: pulse-input: Audio format: float32le, 48000 Hz, 2 channels
13:02:42.704: pulse-input: Started recording from 'default_sink.monitor' (default)
13:02:42.704: v4l2-input: Start capture from /dev/v4l/by-id/usb-046d_HD_Pro_Webcam_C920_95780FAF-video-index0
13:02:42.765: v4l2-input: Input: 0
13:02:42.769: v4l2-input: Resolution: 640x480
13:02:42.769: v4l2-input: Pixelformat: YUYV
13:02:42.769: v4l2-input: Linesize: 1280 Bytes
13:02:42.769: v4l2-input: Framerate: 30.00 fps
13:02:42.769: v4l2-input: /dev/v4l/by-id/usb-046d_HD_Pro_Webcam_C920_95780FAF-video-index0: select timeout set to 166666 (5x frame periods)
13:02:42.772: Switched to scene 'Main'
13:02:42.772: ------------------------------------------------
13:02:42.772: Loaded scenes:
13:02:42.772: - scene 'Main':
13:02:42.772:     - source: 'Audio' (group)
13:02:42.772:         - source: 'Audio - Discord' (pulse_output_capture)
13:02:42.772:         - source: 'Audio - Game' (pulse_output_capture)
13:02:42.772:         - source: 'Audio - Misc' (pulse_output_capture)
13:02:42.772:     - source: 'Game Capture' (vkcapture-source)
13:02:42.772:     - source: 'Camera' (v4l2_input)
13:02:42.772: ------------------------------------------------
13:02:43.297: adding 21 milliseconds of audio buffering, total audio buffering is now 21 milliseconds (source: Audio - Misc)
13:02:43.297: 
13:02:49.206: adding 64 milliseconds of audio buffering, total audio buffering is now 85 milliseconds (source: Audio - Game)

Game log:

Paste game terminal output here.
Make sure to set OBS_VKCAPTURE_QUIET=0 environment variable.

It's a Steam game, I not sure how to launch it through the terminal.

Telokis avatar Nov 11 '25 12:11 Telokis