Tech specs
How the live video works, what our hosting runs for you, and what your own servers need if you host FluffCams Pro yourself.
How the live video works
FluffCams Pro streams real-time WebRTC video through an SFU (selective forwarding unit) media server. The model sends one stream to the server, and the server forwards it to every viewer, so a model's upload does not grow with the audience. The video is sent in several quality layers, and each viewer gets the best one their connection can take, or the one they pick in the quality menu.
- Media server: LiveKit, free open-source software. Our hosting runs it for you; on your own servers you run your own or use a hosted LiveKit service.
- Strict networks: a TURN relay carries the video for viewers behind firewalls that block direct WebRTC connections, such as some office, school and hotel networks. Our hosting includes it.
- Private, group and ticket shows run in their own rooms on the media server, so only the people who paid receive that video.
- Viewer cameras are separate rooms that only the model receives.
OBS and other streaming programs
- WHIP (OBS 30 or newer): the WebRTC ingest standard. OBS encodes the picture on the model's computer and the media server passes it through as it is, so it costs your server almost nothing. This is the way the Studio recommends.
- RTMP stream key: for programs and multistreaming services that only send RTMP. The media server re-encodes each RTMP stream, which takes a quarter of a processor core or more per streaming model, depending on the quality settings. It needs Redis and LiveKit's Ingress service, and it can be switched off.
- Virtual cameras (OBS Virtual Camera and similar programs) work like any webcam in the browser.
FluffCams Pro and FluffCams RTC
FluffCams RTC also streams with WebRTC, with a different method of streaming that costs less to run. FluffCams Pro sends every room through an SFU media server, which adds streaming from OBS, recording shows, separate rooms for paid shows and adaptive quality for every viewer.
What our hosting runs for you
- The website, the database and the background jobs.
- The media server and the TURN relay for the live video.
- https with a certificate that renews by itself, server and security updates, every FluffCams update, and a database backup every night that is read back to prove it is complete.
Self-hosting: the website server
- Linux with Apache (with mod_rewrite) or another web server that can send requests to PHP.
- PHP 8.4 or newer (8.5 works too), with the ionCube Loader (free; it runs the protected part of the script) and the extensions mysqli, gd (with WebP and FreeType), curl, mbstring, openssl, json, fileinfo and zlib.
- MySQL 8.0 or newer.
- A memory limit of 256 MB or more for PHP, and uploads of 200 MB or more (models upload videos).
- https (a free Let's Encrypt certificate is fine) and cron jobs (the site runs small jobs every minute).
- For converting uploaded videos: ffmpeg. Converting can also be switched off or done on a separate worker server.
- Optional: ClamAV to scan uploads.
Self-hosting: the media server
- A small site starts on a server with 2 processors and 2 to 4 GB of memory; video traffic is the main cost as your site grows.
- A TURN relay for viewers on strict networks (LiveKit has one built in).
- For OBS: LiveKit's Ingress service and Redis (WHIP and RTMP).
- For recording shows: LiveKit's Egress service and storage (a folder, Amazon S3, Cloudflare R2 or another S3-compatible bucket).
Outside services you connect with your own accounts
Payment providers, ID checks, email, push alerts and the other optional services connect from the admin panel with your own keys. The admin's System health page checks the server for you.
Tech note: FluffCams Pro uses the LiveKit media server; FluffCams RTC uses WebRTC through RTCMultiConnection.
Not sure? Let us host it or ask us.