After six months of development, version 31.1 of OBS Studio has been released, a package for streaming, compositing, and recording video. The code is written in C/C++ and is distributed under the GPLv2 license. Builds are available for Linux (flatpak), Windows, and macOS.
The goal of developing OBS Studio was to create a portable version of the Open Broadcaster Software (OBS Classic) that is not tied to the Windows platform, supporting OpenGL and extensible through plugins. It also features a modular architecture that separates the interface from the core of the application. It supports re-encoding of source streams, video capture during gaming, and streaming to PeerTube, Twitch, Facebook Gaming, YouTube, DailyMotion, and other services. To ensure high performance, hardware acceleration mechanisms can be utilized (for example, NVENC, Intel QSV, Apple Video Toolbox, and VAAPI).
Compositing support is provided based on arbitrary video streams, webcam data, video capture cards, images, text, application window content, or the entire screen. During broadcasting, switching between multiple predefined scene options is allowed (for example, to toggle views focusing on screen content and the webcam image). The program also provides tools for audio mixing, filtering using VST plugins, leveling volumes, and noise suppression.
Key changes:
- For Linux and macOS platforms, support for streaming multi-track video has been implemented, allowing broadcasting with multiple quality levels simultaneously (for example, in addition to 1080p, 720p and 480p variants are created).
- Options have been added to the user interface settings to change font parameters, such as size, letter spacing, and text margins.
- Buttons have been added to adjust the scaling level of the preview area.

- In the AV1 encoder based on the AMF framework, support for B-frames (bidirectional frames that can reference previous and subsequent frames) has been implemented.
- The ability to utilize the GPU for converting color formats, color spaces, and color ranges has been added.
- For multitrack videos, network optimizations and TCP Pacing (which reduces packet loss when memory is low on transit routers) have been implemented.
- Support for delayed broadcasting (Stream Delay) has been added for multitrack videos.
- The video encoder based on VA-API has implemented QVBR (Quality-Defined Variable Bitrate) encoding mode to ensure consistent video quality at a specified bitrate. This mode has been implemented for Intel and AMD GPUs.

- The screen capture function using PipeWire has added support for the 'explicit sync' mechanism, allowing for reduced latency and elimination of artifacts.
- Support for virtual cameras based on the V4L2 API has been added for BSD systems.
- On the Linux platform, hardware acceleration in the browser-based broadcasting source (Browser Source) has been added, which currently works only on systems with Intel and AMD GPUs.
- Support for the Windows platform on ARM architecture systems has been added.
Source: opennet.ru


