All versions
0.6.0-alpha
Alpha
BrowsMainer Online 0.6.0-alpha3 months ago 195
Compatibility
Minecraft: Java Edition
1.21.11
Platform
Fabric
Supported environments
Client-side
Client and server
Changes
Mainbrows Fabric 0.6.0-alpha Changelog
Release date: July 31, 2026
Controls
- Corrected browser scrolling so that it now follows the mouse wheel direction.
- Leaving browser control mode now requires holding
ESCfor two seconds. - While
ESCis held, the action bar displays the remaining time before browser control mode is closed. - A short
ESCpress is still forwarded to the website, for example to exit a fullscreen video. - Right-clicking a display now connects the player to its local browser session in single-player worlds.
- A clear chat message confirms when the player connects to a display.
Browser Toolbar
- The toolbar height now adapts to the display size and aspect ratio.
- Small displays no longer receive an unnecessarily one-block-high toolbar.
- Back, forward, and reload buttons scale together with the toolbar.
- Fixed the broken reload button.
- The displayed URL now updates automatically after navigation within a website.
- Periodic URL synchronization corrects the toolbar if a navigation event is missed.
- Minecraft latency, stream latency, and buffer status are displayed compactly in the toolbar.
Audio
- Completely redesigned the audio settings interface.
- Each display has its own card with display selection, volume control, and audio mode.
- Available audio modes: Stereo, Mono, and Off.
- The playback device can be selected separately for each display.
- The status indicates whether the selected display is connected and whether stream audio is being received.
- Long display lists can be navigated using the mouse wheel or scrollbar.
- During buffered playback, audio packets are queued ahead of time and continuously supplied to JavaSound instead of being submitted at the last moment.
- Audio output now pauses correctly while playback is paused or the buffer is being rebuilt.
Buffering and Playback
- The client now calculates the actual remaining buffered media time from the playback timeline.
- Short network interruptions consume only the corresponding amount of buffered time instead of triggering an underflow after a fixed 500 milliseconds.
- Rebuffering begins only when playback actually reaches the safety margin.
- Audio packets older than the agreed playback start position are discarded.
- Buffered playback uses consistently timestamped JPEG and PCM packets, preventing irregular FFmpeg output chunks from causing brief stutters.
- The buffer indicator and playback clock continue to update during playback.
- Added three regression tests covering buffer consumption, the underflow threshold, and loading progress.
Media Compatibility
- Improved TikTok codec detection and media error diagnostics.
- Added a temporary WebM fallback for TikTok media that cannot be played directly.
- H.264/Opus and JPEG/PCM transport paths are selected according to the playback mode.
Known Limitations
- Widevine/DRM is not included in this release. DRM-protected services such as Crunchyroll may therefore still fail with errors such as
KAT-6005. - TikTok may block the WebM fallback with a CDN
HTTP 403response. Affected videos still cannot be played when this happens. - Enabling a playback buffer intentionally delays visible input responses and media playback by the configured buffer duration.
Compatibility
- Minecraft 1.21.11
- Java 21 or newer
- Fabric Loader 0.19.3 or newer
- Fabric API required
- Paper servers require the matching Mainbrows Paper plugin.
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle. To learn more about the Modrinth Maven API, click here.
Note: When available, you should use the creator's maven repo instead as it will have transitive dependency information that the Modrinth Maven API does not. You may also end up with duplicate dependencies if you use a mix of Modrinth and non-Modrinth Maven repositories for your dependencies, because the group identifier will be different when served through the Modrinth Maven API.
Maven coordinates:
Version ID:
build.gradle:
repositories {
exclusiveContent {
forRepository {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
}
}
// forRepositories(fg.repository) // Uncomment when using ForgeGradle
filter {
includeGroup "maven.modrinth"
}
}
}
// Standard Gradle dependency
dependencies {
implementation "maven.modrinth:uBNT5oUR:925ocPpi"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:uBNT5oUR:925ocPpi"
}

