OBS Anti-Cheat Compatibility Hook Explained
This article explains the function of the “Use anti-cheat compatibility hook” option in OBS Studio’s Game Capture properties. You will learn how this setting resolves black screen issues and game crashes caused by security software, how the hooking mechanism works behind the scenes, and when you should keep this feature enabled to ensure stable streaming and recording.
What the Anti-Cheat Compatibility Hook Fixes
The “Use anti-cheat compatibility hook” option primarily fixes the “black screen” issue where OBS Studio fails to capture game footage, showing only a blank screen instead. It also prevents games from crashing or refusing to launch when OBS Studio attempts to capture them.
These issues occur because modern multiplayer games use aggressive anti-cheat systems (such as Easy Anti-Cheat, BattlEye, or Ricochet) to prevent unauthorized software from tampering with the game’s code. Because OBS Studio must inject itself into the game’s rendering pipeline to capture the video frames directly from the graphics card, anti-cheat programs often flag this behavior as a potential hacking attempt and block the capture process.
Checking this option forces OBS to use a modified, highly compatible injection method that anti-cheat systems recognize as safe, allowing the capture to succeed without triggering security alerts.
How the Compatibility Hook Works
When you use the Game Capture source, OBS Studio utilizes a helper
file called graphics-hook64.dll (or
graphics-hook32.dll for older 32-bit games).
- Without the Hook: OBS attempts a direct injection into the game’s process. Anti-cheat software detects this foreign code injection and blocks it immediately, resulting in a black screen in your OBS preview.
- With the Hook Enabled: OBS utilizes a digitally signed, widely whitelisted hooking mechanism. This signature verifies to the anti-cheat software that the injecting process is a legitimate copy of OBS Studio and not malware or a cheat engine. The anti-cheat system then allows the DLL to bind to the game’s graphics API (such as DirectX or Vulkan) to copy the frames.
When Should You Enable or Disable It?
As a general rule, you should leave this option enabled. It is checked by default in OBS Studio because it has virtually no negative impact on system performance or input lag.
Keep it enabled if:
- You are capturing popular multiplayer games with active anti-cheat software (e.g., Apex Legends, Fortnite, Dead by Daylight, or Call of Duty).
- You are experiencing a black screen when using the Game Capture source.
Disable it only if:
- You are playing an older, single-player game that crashes specifically when OBS is open, as some legacy game engines can conflict with the compatibility hook.
- You are using a specialized third-party capture tool or modding framework that conflicts with OBS’s hooking DLL.