Skip to content

Add player benchmarks: play handshake and 500/1000 viewers - #33

Merged
AlexanderWagnerDev merged 1 commit into
mainfrom
claude/benchmarks-irl-showcase-hq4kj1
Sep 27, 2026
Merged

AlexanderWagnerDev merged 1 commit into
mainfrom
claude/benchmarks-irl-showcase-hq4kj1

Conversation

@AlexanderWagnerDev

@AlexanderWagnerDev AlexanderWagnerDev commented Sep 27, 2026 •

Copy link
Copy Markdown
Contributor

Before: /benchmarks/ only covered the publisher handshake and viewer joins at up to 100 viewers. It also said librtmp2-server had the lowest latency in every test.

After: EN and DE get two new sections, and the full results table gains both of them:

  • Connect and play. A latency chart and a play-handshakes-per-second chart. librtmp2-server leads both.
  • 500 and 1000 viewers on one stream. Tabs for 1000 and 500 viewers, each with a join-latency chart plus server CPU and memory charts.

Other changes:

  • All numbers are refreshed from the new sweeps.
  • The homepage teaser now says all 1000 viewers get every frame.
  • The lead sentence now says what holds: fastest publish and play connects, and leading joins at 25, 100 and 1000 viewers.

The bar charts now badge whichever server actually leads. The badge says "Leanest" / "Sparsamster" on the CPU and memory charts, and every other row shows its factor behind the leader. librtmp2-server does not lead every chart:

  • LiveForge at 1 viewer.
  • MediaMTX at 500 viewers.
  • SRS on CPU.
  • nginx-rtmp on memory.

How: OPENRTMP_BENCH_PLAY_HANDSHAKE and OPENRTMP_BENCH_LOAD are new in includes/benchmarks-data.php, copied from librtmp2-server's BENCHMARKS.md (OpenRTMP/librtmp2-server#254). The shared template renders both new sections.

🤖 Generated with Claude Code

https://claude.ai/code/session_017zwRjF57hJ56nbsK7yApc6


Generated by Claude Code

Summary by CodeRabbit

  • New Features
    • Added benchmark results for player connection and playback handshakes, plus load tests at 500 and 1,000 viewers. Results include join latency, frame rate, CPU usage, and peak memory.
    • Added charts, viewer-count tabs, and tables to explore playback and load-test results.
  • Updates
    • Revised benchmark highlights to reflect connection and join performance across viewer counts, and frame delivery at 1,000 viewers.
    • Improved benchmark page layout on smaller screens and clarified section styling.

The benchmark page gets a connect + play section and a load section with
join latency, server CPU and memory at 500 and 1000 viewers; the full
results gain both tables. All numbers are refreshed from the new sweeps.
Bar charts now badge whichever server leads, since librtmp2-server does
not lead every chart (1-viewer and 500-viewer joins, CPU, memory).

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017zwRjF57hJ56nbsK7yApc6
@coderabbitai

coderabbitai Bot commented Sep 27, 2026 •

Copy link
Copy Markdown

Review in Change Stack →

Navigate logical layers of code changes, visualize relationships, and explore their blast radius.

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Advanced

Run ID: 950c96c3-14c8-4494-b305-72a6cc4faafe

📥 Commits

Reviewing files that changed from the base of the PR and between e482151 and 9b9dbfd.

📒 Files selected for processing (7)
  • assets/css/content.css
  • benchmarks/index.php
  • de/benchmarks/index.php
  • de/index.php
  • includes/benchmarks-data.php
  • includes/benchmarks-page.php
  • index.php

Included review availability: This review used your included allowance. Your plan provides up to 1 included review per hour; 0 remain after this review.


📝 Walkthrough

Walkthrough

The benchmark data now includes playback handshakes and load measurements at 500 and 1,000 viewers. The page displays playback and load charts and tables, updates ranking badges, and revises English and German benchmark descriptions and responsive styling.

Changes

Benchmark results and presentation

Layer / File(s) Summary
Benchmark data and ranking
includes/benchmarks-data.php
Updated connection and join measurements, added playback handshake and load data, and changed badges to identify the first-ranked result.
Playback and load result displays
includes/benchmarks-page.php
Added playback charts and a results table, plus viewer-count load charts and a table showing join latency, FPS, CPU, and RSS.
Benchmark descriptions and responsive layout
benchmarks/index.php, de/benchmarks/index.php, index.php, de/index.php, assets/css/content.css
Revised English and German benchmark descriptions and labels, updated homepage performance claims, and added benchmark spacing and mobile tab layout styles.

Priority: ⬇️ Low

Estimated code review effort: 3 (Moderate) | ~20 minutes

Change: Feature

Suggested reviewers: claude

Merge Risk: ⚪ Minimal · up to 9b9db

No actionable issue remains; the benchmark presentation is mergeable after normal checks.

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly identifies the main changes: player play-handshake benchmarks and tests for 500 and 1000 viewers.
Docstring Coverage ✅ Passed Docstring coverage is 100.00% which is sufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 1 functions across 6 files. (1 skipped: 1 …
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
📝 Generate docstrings
  • Commit to this branch
  • Create a new PR
🧪 Generate unit tests (beta)
  • Commit to this branch
  • Create a new PR

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@sonarqubecloud

Copy link
Copy Markdown

@AlexanderWagnerDev
AlexanderWagnerDev marked this pull request as ready for review September 27, 2026 22:58
@qodo-code-review

Copy link
Copy Markdown

ⓘ Qodo reviews are paused because your trial has ended. Ask your workspace admin to add credits to resume reviews. Manage billing

@AlexanderWagnerDev
AlexanderWagnerDev merged commit e95a783 into main Sep 27, 2026
7 checks passed
@AlexanderWagnerDev
AlexanderWagnerDev deleted the claude/benchmarks-irl-showcase-hq4kj1 branch September 27, 2026 23:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants