gr.Server + client.webrtc()

Check for gradio-app/gradio#13965 (issue #13907): this page is plain HTML, with no Gradio components. It streams to server.webrtc() endpoints with the JS client's client.webrtc(), from the PR's preview build (commit 187d038). The component version is the after Space.

Sign in first. TURN credentials are issued with your own Hugging Face account (rtc_configuration takes your gr.OAuthToken), which is also what gives this gr.Server app its sign-in routes.

What to try:

  1. Video: Start, allow the camera. The stream comes back upside down; move the slider while it runs and the mean brightness the server reports follows.
  2. Audio: use headphones, Start. Your voice is echoed back, and the received frames are counted.
  3. Receive: Start. A generated gradient plays for 10 s at the chosen speed, then the server ends the stream.
  4. Queue: each endpoint allows one stream at a time, for at most 30 s. Open this page in a second tab and start the same stream there while the first runs: it shows its place in line, then starts when the first one stops or hits the time limit.

Video

Brightness

Mean brightness: -

idle

Audio

Frames received: -

idle

Receive

Speed

Seconds: -

idle