Audio Party Rooms
Voice-only rooms with up to 13 seats -creation, seat flow, audio-only enforcement.
Last updated Thu Jul 16 2026 00:00:00 GMT+0000 (Coordinated Universal Time)
TL;DR -An audio party room is a live room with no video: a host plus up to twelve guests talk on voice-only "seats," like a group audio hangout. Everything else -chat, gifts, moderation -works exactly like a video room.
Who this is for -Product & Design: the plain description and seat behavior. Engineering: the seat caps table and the two-layer video ban. Backend: the
assertCanPublishMediaenforcement.
An audio party room is a voice-only version of a live room. Instead of camera tiles, everyone sits in an audio "seat" shown as an avatar, and only their voice goes out. Picture a live radio call-in show or a Clubhouse-style room: a host leads, and a handful of guests can come up and talk.
Because there's no video, these rooms fit far more people on stage (up to 13 total) and cost much less to run. They reuse all the machinery of a normal live room; the only real differences are more seats, avatar tiles instead of video, and a hard rule that no video is ever allowed.
In plain terms
- It's a live room without cameras. Host plus up to 12 guest seats, all voice-only.
- Seats are just stage spots. A viewer taps an empty seat to ask to come up; the host approves; they start talking (muted at first, like everywhere else).
- Gifts, chat, discovery, and moderation all work the same as a video room.
- Video is impossible here -not just hidden in the UI, but rejected by the server, so no hacked client can sneak a camera in.
The rest of this page covers the mechanics behind those points.
Audio party rooms (kind: voice) are voice-only live rooms in the Yalla
style: a host seat plus up to 12 guest seats, no video anywhere. They reuse
the entire live-room machinery -discovery, join flow, chat, gifts, stage
requests, moderation -with three differences: bigger seat counts, avatar
seats instead of video tiles, and a hard server-side ban on video.
Creating one
Making an audio party room is the same flow as a video room -you just flip one toggle on the create screen.
The create screen has a Video Live / Audio Party toggle. Audio Party
switches the layout picker to seat layouts (9 or 13 seats, host included)
and sends kind: "voice" to POST /live/rooms. Everything else -title,
privacy, background, warm-up + go-live -is identical to video rooms.
The maximum number of guest seats is enforced separately for each room kind, everywhere a layout can be set (create, the layout-update endpoint, and the socket layout event):
| Kind | Max guest slots |
|---|---|
live (video) | 9 |
voice (audio party) | 12 |
Seats are stage slots
A "seat" isn't a new concept -it's the same stage-guest flow as a video room, just rendered as an avatar and always audio-only.
A seat is the existing stage-guest mechanism: viewers tap an empty seat to
request it, the host approves, and the guest starts publishing. In voice
rooms the guest media-choice dialog is skipped -an accepted request takes
the seat audio-only (joining muted, as everywhere else). The client renders
every cell as an avatar seat (isAudioOnly layout cells); occupied seats
show the person's initial, gift counters still overlay each seat, and gifts
can target any seated guest (standard guest-gift split applies -see
Gifting).
Audio-only enforcement
Keeping video out is done in two layers -the app hides the camera, and the server flatly refuses any video. That second layer is what actually guarantees it, since a modified app can't be trusted.
Defense in depth, because the codec path is end-to-end through the SFU:
- Client: hosts join with
video: false(no camera capture at all), the camera toggle is hidden in the composer, andtoggleCamerano-ops in voice rooms. - Server (authoritative):
assertCanPublishMediarejects any video producer in aVOICEroom with 403 -a modified client cannot put video into an audio room.
Audio-only rooms carry no video bitrate, so 13-seat rooms are cheap on both the SFU and every listener's connection.
Discovery
Voice rooms show up in the same discovery grid as video rooms, just tagged so viewers know what they're tapping into.
Voice rooms appear in the same discovery grid with an Audio badge next
to the privacy badge. GET /live/rooms already returns kind per room.
Related pages
- Live rooms -the full live-room feature set these rooms reuse.
- Joining a room -the join and seat flow.
- Business: Gifting -how gifts to seated guests split.
- Architecture: Media & SFU -the media path video is banned from here.