MCPcopy Index your code
hub / github.com/NOALBS/nginx-obs-automatic-low-bitrate-switching

github.com/NOALBS/nginx-obs-automatic-low-bitrate-switching @v2.17.0

Chat with this repo
repository ↗ · DeepWiki ↗ · release v2.17.0 ↗ · + Follow
473 symbols 871 edges 33 files 29 documented · 6% updated 2d agov2.18.0 · 2026-07-06★ 49340 open issues
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

NOALBS GitHub stars GitHub forks

A simple executable for all Operating Systems (Windows, Mac & Linux) to automatically switch scenes in OBS Studio/OBS.Live; based on the current bitrate fetched from your ingest server stats. NOALBS is used as a DIY tool to have your OBS Studio/OBS.Live auto switch scenes when you are either in a LOW bitrate situation or if your source disconnects completely from your ingest server (RTMP, SRT, SRTLA, RIST Etc..).

GitHub commits since latest release GitHub last commit Build Status Latest Release GitHub repo size Contributors License Github All Releases

GitHub language count GitHub top language

GitHub Sponsors GitHub Sponsors


Try out the new NOALBS Cloud Alpha (Twitch Only) today!


Connect with Us:

NOALBS DISCORD NOALBS X
Discord X/Twitter

Similar Solutions / Paid Services

Don't feel like setting this all up by yourself? - Message me @b3ck on Discord and I'll do everything for you for a fee (not for free), make sure to send a message request and message me with what you need as I delete friend requests (pointing at you graphic artists) 😄👍

or..

  • Check out these links for similar solutions/paid services:
Service Name Details/Slogan Extra
BELABOX The only SRT/SRTLA service optimized for bonding with a BELABOX DIY / BELABOX BEE
IRLHosting Cloud hosting and endpoints Essential Tools for IRL Streamers
AntiScuff Cloud OBS Hosting
IRLToolkit Step your stream up to the next level!
IRLTK - NoDrop Go Live Without Worry, With IRLToolkit NoDrop, you'll never worry about splitting VODs again!
noRIP.io Services to stabilize your stream
StreamAtom Powered by the StreamAtom Team, Supported by you.
IRLtools IRL Accessories & Guides
IRLServer Simplify and Stabilize your IRL-stream.
OBS-Hosting German OBS/IRL & 24/7 VOD Server Hosting by dataforest GmbH

Do you offer a similar solution or paid service? Want your link here? Message @b3ck on Discord. - Also if your service is already listed above and you would like me to add any type of tracking to the URL so you know where your traffic is coming from send me a DM on Discord.


Table of Contents

More In-Depth Explanations of each section


Quick Start

  • Download the latest binary from releases
  • Have OBS-Studio (OBS-WebSocket 5.x+ comes with OBS.
  • Enable OBS Websocket in OBS: image

image

Chat Commands

Click to view the chat commands section

NOALBS gives you the option to enable some simple chat commands to help you manage your stream from your own Twitch/Kick chat, here is how to use them:

Please note: Admins are all the users in the admins array in chat config section, MODs are all of your MODs, and Public is anyone in your chat.

Click to view all chat commands

Default Role Command Description Example
Admins !start on-demand command to start streaming in OBS. !start
Admins !stop on-demand command to stop streaming in OBS. !stop
Admins !record on-demand command to toggle recording in OBS. !record
Admins !collection (name) changes the scene collection and profile. !collection twitch
Admins !alias (alias) (command) add an alias for a command. !alias ss switch
Admins !alias rem (alias) removes an alias for a command. !alias rem ss
Admins !switch (scene) switches to the provided SCENE (fuzzy match). !switch INTRO
Admins !source (value) Toggles an OBS source item visibility on the current scene !source media
Admins !live switch to the live scene. !live
Admins !privacy switch to the privacy scene. !privacy
Admins !starting switch to the starting scene. !starting
Admins !ending switch to the ending scene. !ending
Admins !streamserver (name) Toggles the stream server on or off. !streamserver belabox
Admins !noalbs prefix (prefix) change noalbs command prefix. !noalbs prefix #
Admins !noalbs retry (value) changes the retry value for the switcher. !noalbs retry 5
Admins !noalbs lang (value) changes the chat response language. !noalbs lang zh_tw
Admins !noalbs ignore (username) adds a user to the ignore list. !noalbs ignore 715209
Admins !noalbs rem (username) removes a user from the ignore list. !noalbs rem 715209
MODs !trigger (value) changes the low bitrate threshold to the defined value. !trigger 800
MODs !otrigger (value) changes the offline bitrate threshold to the defined value. !otrigger 200
MODs !rtrigger (value) changes the RTT based low threshold to the defined value. !rtrigger 1500
MODs !ortrigger (value) changes the RTT based offline threshold to the defined value. !ortrigger 2000
MODs !sourceinfo gives you details about the SOURCE in chat. !sourceinfo
MODs !serverinfo gives you details about the SERVER in chat. !serverinfo
MODs !fix tries to fix the stream. !fix
MODs !refresh tries to fix the stream. !refresh
Public !bitrate returns the current bitrate. !bitrate

You can also enable/disable certain features from chat, see below:

Default Role Command Description Example
Admins !public (on/off) enables/disables the use of Public commands. !public off
Admins !mod (on/off) enables/disables the use of MOD commands. !mod on
Admins !notify (on/off) enables/disables the notifications in chat. !notify off
Admins !autostop (on/off) enables/disables the auto stop feature when you host/raid. !autostop on
Admins !noalbs (start/stop) NOALBS start/stop switching scenes. !noalbs stop
Admins !noalbs instant toggle instant switching from offline scene. !noalbs instant

Configure NOALBS

Click to view how to configure NOALBS

Before editing any type of configuration file I highly recommend using a code editor rather than using notepad, just trust me on this..

Your 🧠 brain and 👀 eyes will thank me lat

Extension points exported contracts — how you extend this code

SwitchLogic (Interface)
(no doc) [11 implementers]
src/stream_servers/mod.rs
ChatLogic (Interface)
(no doc) [2 implementers]
src/chat/mod.rs
ConfigLogic (Interface)
(no doc) [1 implementers]
src/config.rs
BroadcastingSoftwareLogic (Interface)
(no doc) [1 implementers]
src/broadcasting_software/mod.rs
StreamServersCommands (Interface)
(no doc) [11 implementers]
src/stream_servers/mod.rs
Bsl (Interface)
(no doc) [11 implementers]
src/stream_servers/mod.rs

Core symbols most depended-on inside this repo

send
called by 59
src/chat/chat_handler.rs
get
called by 26
src/user_manager.rs
send
called by 19
src/chat/kick.rs
save_config
called by 17
src/chat/chat_handler.rs
reply
called by 9
src/ws/mod.rs
send
called by 8
src/twitch_pubsub.rs
send
called by 7
src/state.rs
kind
called by 6
src/config.rs

Shape

Method 241
Class 147
Function 53
Enum 26
Interface 6

Languages

Rust100%

Modules by API surface

src/chat/chat_handler.rs60 symbols
src/chat/kick.rs35 symbols
src/noalbs.rs34 symbols
src/twitch_pubsub.rs29 symbols
src/config.rs27 symbols
src/broadcasting_software/obs_v5.rs27 symbols
src/stream_servers/irlhosting.rs26 symbols
src/switcher.rs16 symbols
src/stream_servers/xiu.rs16 symbols
src/stream_servers/nginx.rs16 symbols
src/state.rs16 symbols
src/chat/mod.rs16 symbols

For agents

$ claude mcp add nginx-obs-automatic-low-bitrate-switching \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page