MIT License

项目介绍

ESFRick/SpeedBand 是一个托管在 GitHub 上的开源项目,主要使用 JavaScript 编写,采用 MIT License 许可证,目前获得 7 个 Star、0 次 Fork。

仓库全名
ESFRick/SpeedBand
开源许可证
MIT License
Star 数
7

README 摘要

SpeedBand Diagnose whether your LAN is stable enough for realtime streaming. Measures latency, jitter and low-percentile throughput via browser - no install on the second device, no telemetry. Table of contents What SpeedBand does Why not iperf3? Use cases Results Quick start Connecting from another device Firewall Reading results Reports Recommended test conditions License What SpeedBand does Runs a small HTTP…

完整内容见 GitHub 原始 README 或本页 。

常见问题

SpeedBand 用什么语言开发?

主要使用 JavaScript 编写,采用 MIT License 许可证,目前有 7 个 Star。

SpeedBand 可以免费商用吗?

仓库采用 MIT License 许可证,可免费使用与修改,商业使用请遵守许可证条款(例如保留版权声明与许可声明)。

如何获取 SpeedBand 的源码?

可以直接克隆仓库:git clone https://github.com/ESFRick/SpeedBand.git,默认分支为 master;安装与运行步骤见仓库 README。

SpeedBand 最近还在维护吗?

仓库最近一次更新为 6月9日,当前没有未关闭的 Issue;Star 数为 7,可作为社区活跃度的参考。

关于

LAN stability tester for realtime streaming. Measures latency, jitter and low-percentile throughput — browser-based, no install on the second device.

描述取自 GitHub 官方 API,中文内容由 GitRead 中文社区 编辑团队整理。

README

SpeedBand

Go License: MIT Platform: Windows | Linux | macOS Download

Diagnose whether your LAN is stable enough for realtime streaming. Measures latency, jitter and low-percentile throughput via browser - no install on the second device, no telemetry.

SpeedBand demo


Table of contents


What SpeedBand does

Runs a small HTTP server on your machine. Another device opens the page in a browser and runs a full test sequence:

  1. Latency and jitter (/api/ping)
  2. HTTP download throughput (/api/download)
  3. HTTP upload throughput (/api/upload)
  4. WebSocket realtime bitrate ladder (/api/ws)

All traffic stays inside the LAN. Results include a stable bitrate range with headroom levels, a quality label and a bitrate ladder breakdown.

Peak speed is not a safe streaming bitrate. SpeedBand uses low-percentile throughput, jitter and stall detection to estimate a safe operating range.


Why not iperf3?

iperf3 requires installation on both devices and reports raw TCP throughput - not what matters for streaming.

SpeedBand runs as a single binary or go run. The second device only needs a browser. It measures what streaming actually uses: low-percentile throughput, jitter, stall detection and realtime bitrate stability across a stepped ladder. The output is a safe bitrate range with headroom levels, not just a peak number.


Use cases

  • Game and VR streaming (Moonlight/Sunshine, Steam Link, Air Link, Virtual Desktop, ALVR)
  • NAS and media transfer checks
  • Wi-Fi diagnostics
  • LAN testing between PC, phone, tablet, laptop, headset or Steam Deck
  • Finding whether peak throughput hides jitter, stalls or unstable low-percentile results

Results

SpeedBand results SpeedBand results detail

Quick start

Download the binary for your platform from the Releases page and run it.

Linux:

chmod +x speedband-linux-amd64
./speedband-linux-amd64

macOS:

chmod +x speedband-macos-arm64   # Apple Silicon
./speedband-macos-arm64

chmod +x speedband-macos-amd64 # Intel Macs:
./speedband-macos-amd64

Open the LAN URL printed in the terminal on any device in the same network.

Build from source

Windows:

go build -o speedband.exe ./cmd/speedband

Linux / macOS:

go build -o speedband ./cmd/speedband

Flags

Flag Default Description
--host 0.0.0.0 Listen address
--port 8080 Listen port
--open false Auto-open browser on start
--debug false Verbose logging

Firewall

If the page does not open from another device:

  • Confirm both devices are on the same subnet.
  • Windows: when prompted, allow access on Private networks. If not prompted, allow speedband.exe or go.exe in Windows Firewall for Private networks.
  • Linux: ensure the port is open (sudo ufw allow 8080/tcp for UFW-based distros).
  • macOS: allow incoming connections when prompted by the OS firewall dialog.
  • Try the numeric IP instead of .local.
  • Disable VPN temporarily.

SpeedBand listens on 0.0.0.0 by default. Run it only on a trusted local network.


Reading results

Bitrate range levels:

Level Meaning
Very safe Conservative estimate with extra headroom
Recommended Practical stable operating range
Risky upper May work; showed reduced headroom or spikes
Avoid Not recommended without real-app validation

Quality labels:

Label Meaning
Excellent Strong low-percentile throughput, low jitter
Good Suitable for most realtime tasks
Acceptable Usable; leave headroom
Risky Unstable enough to require caution
Unstable Not suitable for high bitrate realtime use

Reports

  • Download JSON - saves report on the client device.
  • Save to server - sends report to the machine; saves a .log file in reports/ under the server working directory.

  • Connect the PC to the router with Ethernet.
  • Use 5 GHz or 6 GHz Wi-Fi for the second device.
  • Close active downloads, cloud sync and game updates.
  • Run the Full stability test before choosing a high bitrate.
  • Repeat 2–3 times; trust the more conservative result.

License

MIT

评论

暂无评论