OBS Studio
View on Wikipedia
| OBS Studio | |
|---|---|
OBS Studio running on Ubuntu | |
| Original author | Lain Bailey |
| Initial release | v0.32a / 1 September 2012[1] |
| Stable release | 32.0.2[2] |
| Repository | github |
| Written in | C, C++[3] |
| Operating system | Windows 10 or later, macOS Monterey (12) or later, Linux (Ubuntu 20.04 or later), BSD[4][5] |
| Platform | x86-64 and Apple silicon |
| Available in | 59 languages[6] |
List of languages
| |
| Type | Software vision mixer, streaming media |
| License | GPL-2.0-or-later[7] |
| Website | obsproject |
OBS Studio (also Open Broadcaster Software or OBS, for short)[8] is a free and open-source, cross-platform screencasting and live streaming software application. It is available for Windows, macOS, Linux distributions, and BSD. The OBS Project raises funds on Open Collective and Patreon.[9][10]
Overview
[edit]OBS Studio is a free and open-source application for screencasting and live streaming. Written in C/C++ and built with Qt, OBS Studio provides real-time capture, scene composition, recording, encoding, and broadcasting via Real-Time Messaging Protocol (RTMP), HLS, SRT, RIST or WebRTC. It can stream videos to any RTMP-supporting destination, including YouTube, Twitch, Instagram and Facebook.[11]
For video encoding, OBS Studio can use the x264, AOM-AV1, SVT-AV1 transcoder,[12] Intel Quick Sync Video, Nvidia NVENC, AMD Video Coding Engine and VAAPI to encode video streams into the H.264/MPEG-4 AVC or H.265/HEVC formats.[13] It can encode multiple tracks of audio in AAC and Opus format. More experienced users can choose any codecs and containers available in libavcodec and libavformat, or output the stream to a custom FFmpeg URL.[14]
OBS Studio also supports plug-ins to extend its functionality.[15]
User interface
[edit]
The main user interface is organized into five sections: scenes, sources, audio mixer, transitions, and controls. Scenes are groups of sources like live and recorded video, text and audio. The mixer panel lets the user mute the audio, and adjust the volume through virtual faders, and apply effects by pressing the cogwheel next to the mute button. The control panel has options for starting/stopping a stream or recording, a button to transform OBS to a more professional Studio Mode (see below), a button for opening the settings menu and a button to exit the program. The upper section has a live video preview, used to monitor and edit the current scene. The user interface can be switched to a variety of themes, including both dark and light themes, depending on what the user prefers. The layout of the interface can further be customized by undocking or adjusting the size and location of each panel.
When in Studio Mode, there are two canvas preview windows, the left one for modifying and preview of non-active scenes, while the right window is for preview of the live scene ("Preview" and "Program" respectively). In the middle there is a secondary transition button, allowing for transitioning to the non-active scene in the left window using user-defined "quick transitions".
History
[edit]OBS Studio started out as a small project created by Lain Bailey, but quickly grew with the help of many online collaborators working both to improve OBS and to share knowledge about the program. The first version was released in August 2012.[16][better source needed] In 2013, development started on a rewritten version known as OBS Multiplatform (later renamed OBS Studio) for multi-platform support, a more thorough feature set, and a more powerful API.[17] In 2016, OBS "Classic" lost support and OBS Studio became the primary version.[8] In March 2022, OBS was released on Steam for both Windows and Mac.[18]
On 16 December 2021, an OBS Studio developer drew attention to an invitation-only release of TikTok Live Studio, which appeared to be based on OBS Studio, without acknowledgement and in violation of OBS Studio's license.[19][20]
See also
[edit]References
[edit]- ^ "Open Broadcaster Software – Changelog". The OBS Project. Archived from the original on 17 May 2013. Retrieved 13 October 2020.
- ^ "Release 32.0.2". 29 October 2025. Retrieved 30 October 2025.
- ^ "OBS". The OBS Project. Retrieved 15 January 2022.
- ^ "Open Broadcaster Software | OBS". github. The OBS Project. Retrieved 13 October 2020.
- ^ "Obs-studio Download (APK, DEB, EOPKG, RPM, TGZ, TXZ, ZST)". pkgs.org. Retrieved 10 August 2021.
- ^ "Locales". github. The OBS Project. Retrieved 13 October 2020.
- ^ "copying". GitHub. The OBS Project. Retrieved 13 October 2020.
- ^ a b Jack0r (11 October 2016). "OBS Classic is no longer supported – Here's how to easily switch to OBS Studio". The OBS Project. Retrieved 26 March 2020.
- ^ "Open Broadcaster Software". Open Collective. Retrieved 23 March 2021.
- ^ "Hugh Bailey ("Jim") is creating the OBS Project". Patreon. Retrieved 23 March 2021.
- ^ Wilde, Tyler (4 December 2012). "How to stream games with Open Broadcaster: a fast, free livestreaming application – News – PC Gamer". PC Gamer. Future Publishing Limited. Retrieved 2 June 2013.
- ^ "x264 Home Page". VideoLan Organization. Retrieved 11 March 2011.
In addition to being free to use under the GNU GPL, x264 is also available under a commercial license from x264 LLC and CoreCodec.
- ^ "General Performance And Encoding Issues". The OBS Project. 12 June 2021. Retrieved 28 September 2025.
- ^ "Surround Sound Guide". The OBS Project. 13 January 2022. Retrieved 28 September 2025.
- ^ "Plugins". The OBS Project. Retrieved 28 September 2025.
- ^ Bailey, Hugh (31 August 2012). "I made a streaming application so I could stream startcraft. Now it's open source and free for everyone". Reddit. Retrieved 10 May 2021.
- ^ "obs-studio/README (first commit)". GitHub. 1 October 2013. Retrieved 19 November 2021.
- ^ "OBS Studio is now on Steam!". store.steampowered.com. 22 March 2022. Retrieved 20 September 2022.
- ^ Roth, Emma (20 December 2021). "TikTok's new Live Studio app allegedly violates OBS' licensing policy". The Verge. Retrieved 14 March 2022.
- ^ Roettgers, Janko (20 December 2021). "TikTok is accused of violating GPL with new livestreaming software". Protocol. Archived from the original on 21 December 2021. Retrieved 14 March 2022.
External links
[edit]OBS Studio
View on GrokipediaIntroduction
Overview
OBS Studio is a free and open-source software application designed for video recording, screencasting, and live streaming.[1] It serves as a versatile tool for content creators, enabling the capture and broadcast of multimedia content across various platforms.[8] The core purpose of OBS Studio is to combine multiple video and audio sources into customizable scenes, which can then be output to popular streaming services like Twitch and YouTube or saved as local files.[8] Users follow a basic workflow by adding sources—such as screen captures, webcams, or media files—to scenes and adjusting audio and video mixers to produce a cohesive output.[8] The software supports key streaming protocols, including RTMP, HLS, SRT, RIST, and WebRTC, facilitating reliable transmission to diverse destinations.[9][10][11] In 2026, OBS Studio remains the best streaming software for a console and PC hybrid setup. It is free, open-source, highly customizable, and supports multiple sources—such as PC game capture and console input via a capture card—for seamless integration, scene switching, and overlays. OBS is preferred for advanced users due to its flexibility, plugin ecosystem, and low resource usage compared to alternatives.[8] For beginners, Streamlabs Desktop offers a more user-friendly interface with built-in widgets but is more resource-intensive. Lightstream is excellent for console-only streaming (no capture card needed, cloud-based), but less ideal for true hybrid PC/console mixing. Professional options like vMix support multi-input setups but are paid and more complex. Cross-platform availability has been a hallmark of OBS Studio since its initial release on May 21, 2014.[12] It supports Windows, macOS, and Linux.[13] The latest stable version, 32.0.2, was released on October 28, 2025, incorporating ongoing enhancements for performance and compatibility.[5]Licensing and Platforms
OBS Studio is released under the GNU General Public License version 2 (GPL-2.0), which permits free use, modification, and distribution of the software for any purpose, including commercial applications, provided that derivative works adhere to the same licensing terms.[4][14] This open-source license fosters a collaborative environment where developers can integrate OBS Studio's codebase into their projects while ensuring the source code remains publicly available.[14] The development of OBS Studio follows a community-driven model hosted on the GitHub repository obsproject/obs-studio, where volunteers contribute code, report issues, and propose enhancements through pull requests.[4] Funding sustains this effort through platforms like Patreon, which supports key developers such as project lead Lain Bailey with monthly pledges totaling over $2,600 from more than 9,500 patrons, and Open Collective, which manages transparent donations and corporate sponsorships.[15][16] Corporate contributions, including Diamond-tier sponsors like NVIDIA, AMD, and Intel (each committing at least $50,000 annually) and Gold-tier partners like Overwolf ($20,000 annually), help form an annual budget exceeding $500,000 as of 2025, enabling full-time developer support and project sustainability.[17] OBS Studio supports multiple platforms to ensure broad accessibility, including Windows 10 and 11, macOS 11 and later (with compatibility for both Intel and Apple Silicon processors), and various Linux distributions such as Ubuntu 20.04 and newer.[5][18] On Linux, installation options include official Flatpak packages for sandboxed deployment across distributions, AppImage for portable execution without system integration, and compilation from source for customized builds.[5][18] Experimental support exists for BSD variants like FreeBSD and OpenBSD, where users can build the software from source, though official pre-built binaries are not provided.[4] Installation is available via direct downloads from the official website at https://obsproject.com/download, with additional integration on Steam for Windows and macOS users since March 2022 at https://store.steampowered.com/app/1905180/OBS_Studio/, allowing seamless updates through the platform, and on the Microsoft Store at https://apps.microsoft.com/detail/xpffh613w8v6lv for Windows users.[5][19][20] The software's cross-platform portability is achieved through a codebase leveraging the Qt framework for the user interface, ensuring consistent functionality and appearance across supported operating systems while minimizing platform-specific dependencies.[1][21] This design choice enhances developer efficiency and user experience by abstracting underlying OS differences, such as graphics APIs (DirectX on Windows, OpenGL on macOS and Linux).[18]User Interface
Scenes and Sources
In OBS Studio, scenes serve as the primary organizational units for content creation, functioning as collections of sources that define distinct visual and audio layouts for streaming or recording sessions. Each scene represents a specific setup, such as an introduction segment, gameplay view, or outro, allowing users to switch between them seamlessly during live broadcasts or recordings to create dynamic productions. This structure enables efficient management of complex workflows by isolating elements into reusable configurations without altering the overall project setup.[22] OBS Studio supports the creation of multiple scenes to enable multi-camera angle streaming, where each scene can be configured with a separate Video Capture Device source linked to a different camera. Users can switch between these scenes live using the scenes list, assigned hotkeys, or Studio Mode for smooth transitions. This setup is standard for productions requiring multiple perspectives, such as gaming, interviews, or events.[23] Key steps include:- In the Scenes box, add new scenes (e.g., "Angle 1", "Angle 2") via the + button.
- In each scene, add a "Video Capture Device" source and select the desired camera.
- Adjust properties like resolution or cropping if needed.
- Assign hotkeys for scene switching in Settings > Hotkeys.
- Enable Studio Mode (bottom-right button) to preview and transition scenes without affecting the live output.
<!DOCTYPE html>
<html>
<head>
<script src="https://cdn.jsdelivr.net/npm/interactjs/dist/interact.min.js"></script>
<style>
.box { width: 200px; height: 100px; background: lightblue; position: absolute; touch-action: none; }
</style>
</head>
<body>
<div class="box">Drag & Resize Me</div>
<script>
interact('.box')
.draggable({
listeners: {
move(event) {
const target = event.target;
const x = (parseFloat(target.getAttribute('data-x')) || 0) + event.dx;
const y = (parseFloat(target.getAttribute('data-y')) || 0) + event.dy;
target.style.transform = `translate(${x}px, ${y}px)`;
target.setAttribute('data-x', x);
target.setAttribute('data-y', y);
}
}
})
.resizable({
edges: { left: true, right: true, bottom: true, top: true },
listeners: {
move(event) {
const target = event.target;
let { x = 0, y = 0 } = target.dataset;
x = parseFloat(x) + event.deltaRect.left;
y = parseFloat(y) + event.deltaRect.top;
Object.assign(target.style, {
width: `${event.rect.width}px`,
height: `${event.rect.height}px`,
transform: `translate(${x}px, ${y}px)`
});
target.dataset.x = x;
target.dataset.y = y;
}
}
});
</script>
</body>
</html>
This file can be added to OBS Studio as a Browser Source via a local file path or hosted URL.[28][33]
On macOS, audio input can be captured using the global "Mic/Auxiliary Audio Device" configured in Settings > Audio, which provides a persistent default track in the audio mixer for basic microphone capture across all scenes, or via the "Audio Input Capture" source type, which is added as a scene-specific source allowing direct selection of a particular audio input device (such as an external microphone or audio interface) and creating a separate mixer track. The Audio Input Capture source provides greater flexibility for managing multiple devices or targeted capture and is commonly recommended in macOS guides to avoid potential global configuration issues or audio duplication, which can occur if both the global Mic/Aux setting and an Audio Input Capture source capture the same device.[34][35]
OBS Studio supports integration with professional audio mixers and external gear through several methods. Users can route the main output (stereo or multi-channel) from a hardware mixer to a computer's audio interface or USB input, then capture it as an 'Audio Input Capture' source in OBS. For advanced low-latency, multi-channel support from professional audio interfaces or mixers, the community-developed OBS-ASIO plugin enables direct ASIO device integration, allowing high-fidelity capture of multiple channels with minimal latency. The built-in advanced audio mixer provides per-source filters (noise suppression, compressor, limiter, EQ) and VST plugin support for further processing external audio inputs. This makes OBS suitable for complex setups involving pro mixers like Behringer, Yamaha, or streaming-specific devices (e.g., RODECaster Pro), where users mix sources externally before feeding into OBS for streaming/recording.
The standard Media Source is limited when handling video clips with multiple audio tracks, typically playing only the default track without an option to select alternatives. In contrast, the VLC Video Source offers better support for such files, allowing users to select a specific audio track via its properties. To use it, add a VLC Video Source, add the file to the playlist, and in the properties' Audio tab, choose the desired track from the Audio Track dropdown. It is recommended to verify the file's audio tracks in an external player like VLC beforehand.[32] These sources can be added, arranged, and layered within a scene using the Sources panel, where their visibility, order, and positioning are controlled to compose the final composition.[8]
Source properties provide extensive customization options to refine appearance and integration, including filters that enable precise adjustments. Common filters include cropping to trim edges of a source, scaling or aspect ratio adjustments to resize and reshape content while maintaining proportions, chroma key for removing a specified color (such as green screen backgrounds) to enable virtual sets, and color correction for modifying gamma, contrast, brightness, saturation, hue, and opacity. The Scroll filter allows sources to move continuously in any direction and is commonly employed to create marquee scrolling effects on text sources. OBS Studio does not have a built-in perspective transform or keystone correction filter for advanced geometric adjustments.[36][37] These filters are applied directly to individual sources via the Filters dialog, allowing non-destructive edits that enhance visual quality without altering the original input. To create a marquee scrolling text overlay, add a Text (GDI+) source to the scene and input the desired text (ensuring sufficient length for effective scrolling or using a file source for dynamic content). Right-click the text source, select Filters, and add the Scroll filter. In the Scroll filter properties, set Horizontal Speed to a negative value (e.g., -10 to -50) for right-to-left scrolling (positive values for left-to-right), Vertical Speed to 0 for horizontal-only movement (or adjust for vertical scrolling), enable Loop (default) for continuous repetition, and enable Limit Width/Height with corresponding Width/Height values to define a bounding box for the visible area (e.g., for a news ticker). If text appears cut off, disable "Use Custom Text Extents" in the text source properties and rely on the filter's Limit Width/Height settings for improved control. Adjust speed values based on text length and desired scrolling pace.[37] Additionally, sources can be nested within groups to organize complex arrangements, treating the group as a single unit that can be moved, scaled, or toggled collectively for streamlined editing in large scenes.[23]
Scene collections extend this flexibility by allowing users to save and manage multiple sets of scenes tailored to different projects or contexts, such as separating streaming overlays from recording templates. Each collection encompasses all associated scenes, sources, and global audio settings, facilitating quick switches via the Scene Collection menu. Users can transfer scene collections between computers over a network share using the built-in export and import features or by manually copying the JSON files. The simplest method involves exporting the scene collection on the source computer by selecting Scene Collection > Export and saving the resulting .json file, transferring this file via the network share to the target computer, and then importing it on the target computer by selecting Scene Collection > Import. Alternatively, users can manually copy the desired .json files from the OBS configuration directory: on Windows from %APPDATA%\obs-studio\basic\scenes, on macOS from ~/Library/Application Support/obs-studio/basic/scenes/, and on Linux from ~/.config/obs-studio/basic/scenes/. If sources in the collection reference absolute local file paths (such as images or media files), these paths may need to be updated on the target computer, or the referenced files must be transferred as well. Sharing the same configuration folder over a network is not recommended, as it can lead to data corruption or performance issues. Import and export functions support interoperability with other software like OBS Classic, XSplit Broadcaster, and Streamlabs Desktop, including automatic adjustments for cross-platform compatibility.[22]
While OBS Studio imposes no strict hardcoded limit on the number of sources per scene, practical constraints arise from system performance, with complex setups involving numerous high-resolution sources or heavy filters potentially leading to increased CPU or GPU usage, frame drops, or instability on lower-end hardware.[23] Users are advised to optimize by minimizing active sources and leveraging groups for efficiency in demanding productions.
Controls and Customization
OBS Studio provides a range of intuitive controls for managing audio, video transitions, and the overall user interface, enabling users to adjust scenes and sources in real-time during streams or recordings. The audio mixer serves as a central hub for audio management, featuring real-time volume sliders (faders) that allow precise adjustments to individual sources, displayed in decibels or percentages, with the ability to exceed 100% gain through advanced settings.[38] Visual meters accompany the sliders, using color-coded indicators—green for normal levels, yellow for peaks, and red for potential clipping—to monitor input levels, VU-meter averages, peak programme meter (PPM) for loudness, and peak holds over 20 seconds.[39] Users can apply per-source filters directly from the mixer, including noise suppression to reduce background hum, gain to boost low-level signals, and compressor to even out dynamic range by setting thresholds, attack, release, and ratio parameters.[38] Advanced audio properties, accessible via the Edit menu, support routing options like mono mixdown for stereo sources and monitoring modes to preview audio output without affecting the final stream.[38] Scene transitions facilitate smooth switches between scenes, such as those representing different camera angles in multi-camera setups, with built-in effects such as Fade, Cut, Swipe, Slide, Fade to Color, and Luma Wipe available from the transitions dropdown menu.[8] These can be customized by adjusting duration—typically ranging from 100 to 2000 milliseconds—and specific settings, like direction for Swipe or color for Fade to Color, to match production needs.[8] Quick transitions allow predefined overrides, such as a faster 500ms Fade, triggered via hotkeys or buttons during live sessions for efficient scene changes.[8] While built-in transitions provide basic customization (e.g., duration and specific settings), advanced stinger transition customization—enabling complex effects with variable durations, scene change timing, filter triggers on transition start, audio sources in the transition scene, dynamic text updates (via tools like SAMMI or Streamer.Bot), and integration with plugins like Move Transition for advanced animations and movements—is primarily achieved through community plugins. A key example is the StreamUP Scene as Transition plugin, which allows users to designate an entire OBS scene as a transition for sophisticated custom stingers. More details on these plugins are available in the Plugins and Extensions section.[40][41] Studio Mode enhances live editing by displaying dual preview windows: the "Safe" area on the left for preparing and modifying scenes without interruption, and the "Program" output on the right showing the live feed sent to viewers.[8] This mode is especially valuable for multi-camera productions, allowing users to preview and prepare the next camera angle scene before making a smooth transition to the live output. Activation via the toolbar button separates editing from broadcasting, allowing real-time adjustments to sources or transitions before swapping with a single click or hotkey, ensuring seamless productions.[8] The interface supports extensive layout customization through dockable panels for Scenes, Sources, Audio Mixer, and Stats, which can be dragged to new positions within the main window or undocked into separate floating windows for multi-monitor setups. Starting with version 32.0 (September 2025), a Plugin Manager dock provides in-app tools for installing, enabling, disabling, and updating plugins directly within the UI.[6] This flexibility accommodates varied workflows, such as dedicating a secondary display to the preview or mixer for better visibility during streams. Themes control the application's appearance, with the default Yami dark theme providing a navy blue scheme optimized for low-light environments; users can switch to alternatives like Light or System via Settings > General, or install community-created themes in the user directory for further personalization.[42] Hotkey assignments, configurable in the Settings menu, enable quick actions such as scene switching (e.g., Ctrl+1 for Scene 1) or starting/stopping recording (Ctrl+Shift+R), particularly useful for rapid switching between scenes configured for different camera angles, streamlining operations without mouse interaction.[43] The Stats window, accessible via View > Stats or as a dockable panel, offers real-time monitoring of system performance, including CPU and GPU usage percentages, dropped frames due to network or encoding bottlenecks, and rendering lag from GPU overloads.[44] Indicators highlight issues like rendering lag (e.g., frames delayed beyond 2% threshold) or dropped frames (e.g., over 1% indicating bitrate adjustments needed), helping users diagnose and optimize for stable outputs.[44] For details on setting up multiple scenes with separate Video Capture Device sources for different camera angles, refer to the Scenes and Sources section.Features
Streaming and Recording
In 2026, OBS Studio remains the best streaming software for a console and PC hybrid setup. It is free, open-source, highly customizable, and supports multiple sources—such as PC game capture and console input via a capture card—for seamless integration, scene switching, and overlays. OBS is preferred for advanced users due to its flexibility, plugin ecosystem, and low resource usage compared to alternatives. For beginners, Streamlabs Desktop offers a more user-friendly interface with built-in widgets but is more resource-intensive. Lightstream is excellent for console-only streaming (no capture card needed, cloud-based), but less ideal for true hybrid PC/console mixing. Professional options like vMix support multi-input setups but are paid and more complex. OBS Studio supports simultaneous local recording while live streaming, allowing users to broadcast in real-time to platforms like Twitch or YouTube while saving a high-quality local file for editing, highlights, or VODs. This is particularly useful for creators aiming to repurpose content without interrupting their live workflow. To enable:- In Settings > Output > set mode to Simple or Advanced.
- In Simple mode, enable "Record while streaming" or similar options.
- In Advanced, configure separate Recording and Streaming tabs; set Recording encoder to "Same as stream" for efficiency (minimal extra load) or a different encoder (e.g., higher bitrate NVENC/Quick Sync/x264) for superior recording quality.
- Enable "Automatically record when streaming" in Settings > General for automatic activation.
Streaming Console Gameplay Without a Capture Card
While OBS Studio supports direct console input via hardware capture cards for low-latency integration, an alternative software-only method exists for PlayStation (PS4/PS5) and Xbox (Series X/S, One) consoles using their official Remote Play features. This mirrors the console's display to a PC over the network, allowing OBS to capture the Remote Play client window via Window Capture or Display Capture. This approach enables full OBS features like custom overlays, alerts, webcam integration, and streaming to multiple platforms (Twitch, YouTube, etc.) without additional hardware. However, it introduces some latency and compression dependent on network quality (wired Ethernet recommended for best results).For PlayStation
- Enable Remote Play on the PS console (Settings > System > Remote Play).
- Download and install the PS Remote Play app on Windows/macOS.
- Connect and mirror the console gameplay to the PC.
- In OBS, add a Window Capture source targeting the PS Remote Play window.
- Configure audio routing, add other sources, and stream.
For Xbox
- Ensure console and PC are on the same network.
- Use the Xbox app on Windows (supports Remote Play).
- Stream console gameplay to the Xbox app window.
- In OBS, add Window Capture for the Xbox app/Remote Play window.
- Adjust settings and broadcast.
- Open OBS Studio and run the Auto-Configuration Wizard if prompted (or via Tools > Auto-Configuration Wizard) to optimize settings for recording.
- In the Sources panel, click "+" and add "Display Capture" (Windows/Linux) or "macOS Screen Capture" (macOS). Select the display to capture, enable cursor capture if desired, and configure any crop options.
- Verify audio levels in the Audio Mixer (desktop audio and microphone are captured by default; adjust in Settings > Audio if needed).
- In the Controls panel (bottom right), click "Start Recording" to begin.
- Click "Stop Recording" when finished. Test a short recording first to check quality and audio.
Plugins and Extensions
OBS Studio employs a plugin architecture that supports dynamic loading of modules via DLL files on Windows and shared objects on Linux and macOS, enabling seamless extension of core functionality without recompiling the application.[54] Plugins are categorized into types such as sources (for input capture), filters (for processing audio/video), tools (for utility features), and UI extensions (for interface modifications), allowing developers to target specific aspects of the software.[54] In version 32.0, released on September 22, 2025, OBS Studio introduced a built-in plugin manager that facilitates browsing available plugins, installing them directly, updating from designated repositories, and managing their activation at startup.[6] This manager streamlines the process previously handled manually, though it requires administrative privileges on some platforms for full functionality.[55] OBS Studio does not have a built-in perspective transform or keystone correction filter. These effects can be achieved using third-party plugins and scripts, such as the StreamFX plugin's 3D Transform filter (which includes perspective mode for keystone correction and perspective adjustments as well as corner pin mode for four-corner adjustments) or the "Corner Pin" Lua script for four-corner perspective adjustments.[36][56] Several popular plugins enhance OBS Studio's capabilities in targeted ways. StreamFX provides advanced visual effects, including blur filters, 3D transforms (with perspective mode for keystone correction and perspective adjustments), and shader-based customizations for streams and recordings.[57][56] OBS WebSocket offers a remote control API, enabling external applications to interact with OBS via WebSocket protocol for automation and integration.[54] The Move plugin animates source movements during scene transitions, creating smooth positional shifts between scenes sharing similar elements.[41] StreamUP Scene as Transition (also known as Scene as Transition) by Andilippi enables users to designate an entire OBS scene as a transition, supporting advanced stinger transition customization with configurable duration in milliseconds, transition point for scene switching (by time or percentage), filter triggers on the transition scene at the start, audio sources in the transition scene with volume and fade controls, dynamic text updates via integrations with SAMMI or Streamer.Bot, and enhanced animations when combined with the Move plugin.[40] The Browser Transition plugin by Exeldro allows custom transition effects using HTML, CSS, and JavaScript through a browser source, with JavaScript events to control behavior during transitions.[58] Advanced Scene Switcher automates scene changes and other actions through configurable macros based on conditions like time or media playback.[59] Additionally, the Multiple RTMP outputs plugin enables simultaneous streaming to multiple RTMP servers from a single OBS instance, facilitating multistreaming to various platforms.[60] For simpler multistreaming to multiple platforms from a single instance without additional plugins or multiple OBS instances, users can employ cloud-based services such as Restream and Streamster, which distribute a single OBS stream to multiple destinations.[61][62] OBS Studio supports displaying YouTube live chat, including highlighted Super Chat messages, via plugins, scripts, or built-in Browser Sources. A common method uses a Browser Source with YouTube's pop-out chat URL from YouTube Studio, displaying the full chat with Super Chats highlighted. The StreamElements SE.Live plugin integrates unified multi-chat from platforms including YouTube, along with activity alerts such as Super Chats.[63] Lua scripts like "YouTube Live Chat Overlay" automatically embed the chat as a customizable Browser Source.[30] No dedicated plugin exists solely for Super Chats with hotkey controls, but full chat methods include them. Prior to such scene-based and browser-based plugins, custom stingers were commonly created by producing .webm videos with alpha channels using tools like DaVinci Resolve or Blender and applying them via video transition plugins or media sources, though these methods are less flexible than dynamic scene-based approaches. Plugins can be installed manually by downloading from the official OBS forums at obsproject.com or GitHub repositories and placing files in platform-specific directories, such asC:\Program Files\obs-studio\obs-plugins\64bit on Windows or ~/.config/obs-studio/plugins on Linux, followed by compatibility verification against the OBS version.[54] Automatic installation occurs via the built-in manager in version 32.0 and later, which handles downloads and placement while performing basic compatibility checks to ensure alignment with the current OBS build and platform architecture (e.g., x86_64 vs. ARM64).[54] These methods support cross-platform compatibility where applicable, though some plugins remain limited to specific operating systems.[54]
To uninstall a partially installed or broken plugin, users should first check OBS for the source option associated with the plugin. If it appears but functions incorrectly, such as due to header mismatches during partial installation (e.g., copying a .so file to ~/.config/obs-studio/plugins/obs-ios-camera-source/), delete the specific plugin folder via the file manager to fully remove it.[54]
The OBS community has contributed hundreds of plugins as of 2025, hosted primarily on the official forums' resources section, fostering an ecosystem of user-developed extensions. OBS Studio supports scripting for custom automation and extensions via the Tools > Scripts menu. It includes Python 3 (obspython module) and Lua (obslua module, based on LuaJIT 2 compatible with Lua 5.2). Scripts can automate tasks like dynamic source changes, hotkey actions, frame-tick behaviors, and more, without compiling plugins. Community resources include cheat sheets and examples for quick feature additions.[64]
Despite these benefits, plugins carry limitations, including risks of application crashes due to incompatibilities, such as mismatched dependencies or platform-specific issues.[65] Starting with version 32.0, OBS enforces a policy preventing the loading of plugins built for newer OBS releases on older versions to avoid compatibility conflicts and ensure stability.[66]
History
Origins
Open Broadcaster Software (OBS Classic) was initiated in 2011 by Hugh Bailey as a Windows-only open-source tool for live streaming and video recording, primarily aimed at gamers seeking efficient capture and broadcast capabilities.[67] This predecessor project laid the groundwork for capturing game footage and audio without the limitations of proprietary alternatives, but it was constrained to the Windows platform and relied on a basic user interface built around DirectShow for media handling.[67] In August 2012, Hugh "Jim" Bailey, known online as Lain, undertook a complete rewrite of the software, renaming it OBS Studio to emphasize its multiplatform ambitions from inception.[68] The initial alpha release, version 0.1, arrived that same month, driven by Bailey's personal need for a free tool to stream StarCraft II gameplay, addressing frustrations with paid options like XSplit that included advertisements and subscription models.[68] Early development focused on creating a community-driven, ad-free alternative, with Bailey as the lead developer supported by a small volunteer team of 5-10 contributors handling code reviews, bug fixes, and initial cross-platform testing.[69] By 2014, OBS Studio had progressed significantly, with version 0.6 introducing official macOS support to expand beyond Windows, enabling broader accessibility for content creators on Apple hardware. That year also marked a pivotal shift to the Qt5 framework, which improved the user interface's cross-platform consistency and scalability, facilitating easier porting to Linux and enhancing overall stability for real-time encoding.[70] These changes solidified OBS Studio's foundation as a versatile, no-cost solution, attracting early adopters in the streaming community who valued its open-source ethos under the GNU GPL v2 license. A notable controversy emerged in 2021 when allegations surfaced that TikTok's Live Studio desktop application was an unauthorized fork of OBS Studio, incorporating GPL-licensed code without releasing the modified source, in violation of the license terms.[71] This led to significant backlash from the OBS development team and community, prompting public statements from OBS's business development manager confirming evidence of the infringement and highlighting risks to open-source integrity.[72]Development Milestones
OBS Studio was officially launched with version 1.0 on December 17, 2016, marking the transition from the Windows-only OBS Classic by incorporating its core features into a rewritten, cross-platform application supporting Windows, macOS, and Linux from the outset. This release unified scene management, source handling, and encoding capabilities while introducing a modular architecture for easier maintenance and extension.[73] Subsequent major updates have driven the software's evolution through key feature additions and architectural enhancements. Version 20.0, released on August 10, 2017, introduced a modular user interface allowing users to move, disable, or customize dock elements, alongside stinger transitions for video-based scene changes and support for low-latency FTL streaming to Mixer.[74] This version also advanced browser-based sources by improving integration with the Chromium Embedded Framework (CEF), enabling more reliable rendering of web content within scenes.[75] In September 2019, version 24.0 brought built-in virtual camera functionality, permitting OBS output to serve as a webcam feed in third-party applications like video conferencing tools without relying on external plugins.[76] Version 27.0, released on June 1, 2021, added undo/redo support for editing operations, a new display capture method for cross-GPU compatibility on Windows 10 (version 1903+), and preliminary Wayland support on Linux including PipeWire for audio capture.[77] Although full AV1 encoding preview arrived later, this release laid groundwork for advanced hardware acceleration features. Version 30.0, released on November 12, 2023, featured a complete rewrite of the image slideshow source for improved performance, looping controls, and visibility toggles, alongside initial PipeWire video capture integration for Linux to enhance screen and application sharing under Wayland and initial Intel Quick Sync Video (QSV) support for AV1 encoding on Linux.[78] Building on this, version 30.1 in March 2024 expanded PipeWire capabilities and added AV1 support for VA-API.[79] Version 32.0, released on September 22, 2025, introduced a basic plugin manager for easier installation and management of extensions, optimizations for NVIDIA RTX filters including voice activity detection and background chair removal, and opt-in automatic crash log uploading on Windows and macOS to aid debugging. As of October 2025, the latest release is version 32.0.2.[80][6][5] The project's growth has been substantial, with the GitHub repository surpassing 50,000 stars by mid-2025, reflecting widespread adoption among streamers and content creators.[4] Funding through Patreon and Open Collective has supported full-time developers since 2017, enabling consistent releases and community-driven improvements.[16] Visibility expanded further with the official Steam release on March 29, 2022, which simplified access for gamers and integrated seamlessly with the platform's ecosystem. Development has faced challenges, including plugin compatibility breaks in version 32.0 due to internal refactoring of the plugin loading system, prompting developers to update extensions for continued support.[6] As of late 2025, ongoing efforts focus on mobile platform compatibility for Android and iOS streaming setups, alongside exploratory AI-assisted features like automated scene detection and noise suppression.Technical Aspects
Encoding and Output
OBS Studio supports a variety of video encoders for compressing captured content, including both software-based and hardware-accelerated options to balance quality, performance, and resource usage. Software encoders include x264 for H.264/AVC compression and libsvtav1 or libaom-av1 for AV1 (HEVC/H.265 is supported only through hardware encoders), which rely on CPU processing for flexible but computationally intensive encoding. Hardware encoders leverage dedicated GPU or integrated graphics capabilities: NVENC for NVIDIA GPUs (supported on GeForce 750 Ti and newer, with 6th-generation or later recommended for optimal performance). For streaming with NVENC, the recommended Multi-Pass Mode is Two Passes (Quarter Resolution), which runs the first encoding pass at 1/4 resolution to gather bitrate allocation stats quickly, then the second pass at full resolution, delivering ~90-95% of the quality benefits of two-pass encoding (better bitrate distribution, fewer artifacts) with significantly lower GPU load and power usage compared to full resolution.[81] Quick Sync Video (QSV) for Intel processors (from Sandy Bridge-era Core i-series, though Haswell or newer is advised), AMF (formerly VCE) for AMD GPUs (compatible with various Radeon models via updated drivers), and VideoToolbox for Apple Silicon and Intel-based Macs (enabling H.264 and HEVC encoding, with ProRes support for recording on Apple hardware).[82][83] User reports have indicated potential instability when using AMF encoding on certain AMD GPUs, such as the Radeon RX 580 under Windows 10, including crashes, freezes, or GPU driver timeouts, often attributed to driver conflicts or hardware-specific limitations. Common workarounds include performing a clean installation of AMD drivers using Display Driver Uninstaller (DDU), trying different driver versions, running OBS as administrator, or switching to software-based encoding with x264. Users experiencing these issues should consult the Performance Optimization and Troubleshooting section or OBS community forums for further guidance.[84][82] For audio encoding, OBS Studio primarily uses AAC via the FFmpeg library, which provides broad compatibility and efficient compression, alongside Opus for higher-quality, low-latency applications such as streaming. Typical bitrate ranges for audio encoding fall between 128 kbps and 320 kbps, with OBS defaulting to 192 kbps for high-quality settings to maintain clarity without excessive file sizes.[83][85] The output processing pipeline in OBS Studio begins with capturing sources, followed by preprocessing steps such as scaling to match the desired resolution and color space conversion (e.g., from RGB to YUV formats like NV12 for hardware efficiency). This pipeline then feeds into the selected encoder for compression, ensuring compatibility across streaming and recording workflows. Rate control modes include Constant Bitrate (CBR) for stable streaming bitrates, Variable Bitrate (VBR) for adaptive quality based on content complexity, and Constant Quantization Parameter (CQP) for consistent perceptual quality in recordings, with options like Intelligent Constant Quantization (ICQ) available in hardware encoders for dynamic adjustments. While CBR provides predictable bandwidth usage ideal for live streaming, it can lead to quality degradation—such as blurriness, pixelation, or blockiness—during high-motion or intense scenes in local recordings if the fixed bitrate is insufficient, as complex scenes require more bits to preserve detail without compression artifacts. To maintain high quality in variable-content recordings, increase bitrate significantly (e.g., 20,000–50,000 kbps or higher for 1080p60), use VBR to dynamically allocate more bits to demanding scenes, or select quality-based modes like CQP/ICQ (for NVENC and similar hardware encoders) or CRF (for x264) to prioritize consistent perceptual quality independent of fixed bitrate constraints. For further advice on addressing encoding performance and quality issues, refer to the Performance Optimization and Troubleshooting section.[86][87] For low-motion content such as typical webcam recordings at 1080p and 30 fps, lower bitrates or higher CRF/CQP values are sufficient to achieve good perceptual quality with significantly smaller file sizes compared to high-motion scenarios. The OBS community recommends using the x264 encoder with CRF set to 18-23 for a good balance of quality and file size, typically resulting in 0.5-2 GB per hour for low-motion webcam content. Alternatively, use a fixed bitrate (CBR) of 3000-6000 kbps, resulting in approximately 1.35-2.7 GB per hour. For hardware encoders like NVENC, use CQP 15-23. Lower values provide better quality but increase file size; users should test and adjust based on their specific setup.[50] In advanced output settings, OBS Studio includes a Custom FFmpeg Output option for streaming, enabling flexible configuration of encoders, container formats (e.g., MPEG-TS), and output to custom protocols such as UDP via URL specification. This allows advanced users to tailor output for specific network streaming needs.[88] Optimizations in OBS Studio enhance encoding efficiency, such as next-generation NVENC support introduced in version 28 for RTX-series GPUs, enabling advanced features like AV1 hardware encoding on Ada Lovelace architecture (RTX 40-series). HEVC/H.265 encoding has been available through hardware encoders since at least 2017, providing improved compression over H.264. AV1 encoding received experimental preview support in version 27.2 via software options like SVT-AV1 and AOM-AV1, later expanded to hardware in subsequent releases for better efficiency on compatible GPUs. As of October 2025, the latest stable release is version 32.0.2, with ongoing minor updates for stability.[81][89][90] Performance benefits include multi-threaded encoding in software options like x264 to utilize multiple CPU cores, and GPU offloading via hardware encoders to minimize CPU load—NVENC, for instance, allows high-framerate streaming with negligible impact on gaming performance. OBS provides built-in statistics monitoring to detect encoding lag, displaying metrics like dropped frames and overload warnings for real-time troubleshooting. For output formats, OBS Studio supports containers like MKV for robust recording and MP4/MOV, with fragmented MP4 (fMP4) remuxing enabled by default to prevent file corruption from crashes by converting incomplete recordings post-session.[81][91][83]Performance Optimization and Troubleshooting
To achieve lower CPU usage in OBS Studio, users should prioritize hardware-accelerated encoders over the CPU-based x264 encoder, such as NVENC for NVIDIA GPUs, Quick Sync for Intel processors, or AMF for AMD GPUs. These hardware encoders offload the encoding process from the CPU to dedicated hardware, significantly reducing CPU load.[82] Users of AMD Radeon RX 580 graphics cards on Windows 10 have reported crashes, freezes, or GPU driver timeouts when using OBS Studio, including during launch, full-screen game capture, or AMF hardware encoding. These issues are often linked to AMD driver conflicts or problems with hardware encoding and have been discussed in community forums, with some reports from 2024 continuing into later periods. Common fixes include performing a clean driver reinstallation using Display Driver Uninstaller (DDU), updating or reverting to different AMD driver versions, running OBS as administrator, or switching to the software x264 encoder instead of AMF.[84] Additional optimization steps include lowering the output resolution (e.g., to 720p), frame rate (e.g., 30 or 60 FPS), and bitrate; applying downscaling filters in the Output settings; disabling or closing unnecessary sources and filters; and running OBS as administrator when required to resolve permission-related performance issues. A common issue when capturing games in OBS Studio is reduced performance, lag, or capture failures such as black screens when the game is running in regular windowed mode compared to fullscreen or borderless modes. For optimal performance and reliable capture:- Switch the game to borderless windowed mode (also known as borderless fullscreen or "fenêtré sans bordure"), which provides performance close to exclusive fullscreen while enabling efficient capture and seamless alt-tabbing.
- Use the Game Capture source in OBS rather than Window Capture, as Game Capture generally offers lower overhead and better efficiency for games.[92]
- Run OBS as administrator to address hooking issues and improve capture reliability.[25]
- On systems with multiple GPUs (e.g., laptops with integrated and discrete graphics), ensure both OBS and the game use the high-performance GPU via Windows Graphics settings.[93]
- Increase the bitrate substantially when using CBR (e.g., 20,000–50,000 kbps or higher for 1080p60 recordings).
- Switch to quality-based rate control modes that dynamically allocate bits according to scene complexity, such as CQP for NVENC/AMF encoders or CRF for x264, with recommended levels of 16–23 (lower values yield higher quality at the expense of larger file sizes).[50]
- Use higher-quality encoder presets (e.g., slower presets for x264 or high-quality tuning for hardware encoders) or select the "Indistinguishable Quality" preset in Simple output mode.[49]
- Ensure resolution scaling matches between sources and output to avoid additional degradation, and verify that the encoder is not overloaded.