Camera Circles
See your friends' faces in Minecraft. Camera Circles streams your webcam to other players as a live video circle above your head — like Telegram's video messages, but inside the game.

What it does
- Your webcam shows up as a small live circle floating above your head, so other players can see your face while you play.
- Two display styles to pick from: a floating circle above the head, or the video baked into the player's face (like a portrait).
- Zero extra setup for the network — no firewall ports, no separate VoIP server. Video rides along with your normal Minecraft connection.
- Your camera doesn't turn on by itself. You decide when to broadcast.
Install
You need the mod in two places: on your client (to broadcast and see others), and on your server (to relay the video to other players). If only one side has it, nothing works.
1. On your Minecraft client (Fabric)
- Download
fabric-1.0.0+26.1.2.jarfrom the releases page. - Drop it into the
mods/folder of your Fabric profile. - Make sure you have Fabric API installed too.
- Launch the game.
2. On your server
Pick the one that matches your setup.
Single server (no proxy): drop bukkit-1.0.0+26.1.2.jar into the plugins/ folder. Works on Paper, Spigot, Bukkit, Purpur, and Folia.
Server network behind a Velocity proxy: drop the same bukkit-1.0.0+26.1.2.jar into Velocity's plugins/ folder. Done — you don't need it on the backend servers individually anymore. Cameras now work across the whole network: someone broadcasting on Lobby is visible to a friend on Survival.
If you install on both Velocity and the backends, Velocity wins and the backend copies sit idle. You can safely remove them.
Java version
The server jar needs Java 25 or newer. Modern Minecraft 26.1+ already requires this, so on most setups you're fine.
How to use it
By default everything sits quietly until you press one button.
- Press K to open the Camera Circles settings (rebindable in the regular controls menu).
- Click the OFF button in the top-right of the settings screen to turn your camera on. It turns green and says ON.
- That's it — other players around you now see your camera as a circle above your head.
Press the toggle again to stop. If you closed the game while broadcasting, Camera Circles remembers and turns the camera back on the next time you join a server. You can change that — see "Auto-start" below.
Settings
Open the settings screen with K (or bind it to whatever you want under Options → Controls → Key Binds → Camera Circles).
The settings are split into four tabs:
Camera — what device to use, how big a picture to send, and how fast.
- Camera — pick a specific webcam if you have more than one. Leave on auto and the first available one is used.
- Target FPS — how many frames per second to send. More = smoother, but heavier on the network and CPU.
- Width / Height — picture resolution.
- JPEG quality — how sharp the picture is. Lower = blurrier but lighter on the network.
If a server caps any of these lower than your setting, a small yellow ⚠️ icon appears next to the slider — your value will be quietly capped down while you broadcast there, but your preference is preserved for other servers.
Display — how the camera shows up in the world.
- Display —
Disabled(don't draw anything),Above the player(a floating circle, default), orOn the player's face(camera baked into the head model). - Show self — whether you see your own circle in your game.
Off,Third-person only(default, only when you press F5 to see yourself), orAlways. - Auto-start — what happens when you join a server:
Never(always start with camera off),If was on(remember last time — the default), orAlways(always start broadcasting). - Circle size — how big the floating circle is on screen.
Hotkeys — change the keys for toggling the camera, opening settings, and toggling circle visibility.
Hidden — a list of players who are currently broadcasting. Click any of them to hide their circle just for you (a personal mute — it doesn't affect anyone else).
For server admins
The server-side config lives at plugins/CameraCircles/server.json (or plugins/cameracircles/server.json on Velocity). It's created with sensible defaults the first time the plugin runs.
You can cap:
- Maximum resolution your players are allowed to broadcast
- Maximum frame rate
- Maximum bandwidth (kbps) per broadcaster
- How many people can broadcast at the same time
- A view distance — only show circles to players within this many blocks (set to
0for unlimited)
There are also hard absolute ceilings baked into the code (640×480, 30 FPS, 2000 kbps). A misconfigured server cannot exceed them — even if you edit the JSON to ridiculous numbers, they get clamped down on startup. This is intentional: it makes the plugin DoS-safe.
To control who can broadcast, use the cameracircles.use permission. By default it's granted to everyone (default: true in plugin.yml). To restrict it, use any standard permissions plugin (LuckPerms, PermissionsEx, etc.) and revoke it for specific players or groups.
Troubleshooting
"Camera Circles is not installed on this server" appears in chat when you join. The server doesn't have the plugin. Either ask the admin to install it, or it's installed somewhere it can't see you (e.g. only on the proxy when you're connected directly).
My camera doesn't turn on automatically even though I set "If was on". Make sure you left the camera on the last time you played. Disconnecting from a server keeps your "I want to broadcast" preference; pressing the toggle to OFF clears it.
Nothing shows up above other players. Make sure:
- They're broadcasting (their circle has to be ON, not just installed).
- Your Display setting isn't on Disabled.
- They aren't in your Hidden list (check the Hidden tab in settings).
- You're within the server's max view distance.
My camera image isn't appearing on faces in "On the player's face" mode. This mode renders the camera as a high-resolution overlay on the head model. It only shows from the front — from the side or back you'll see your friend's original skin. That's by design (the camera physically can't be on the back of someone's head). It also requires Java 25+ on the server.
FPS drops when I turn the camera on. Try lowering the resolution, frame rate, or JPEG quality in the Camera tab. The lighter your stream, the less work for your client and your network.
Privacy
A few things to know:
- Your camera never turns on without your input. Auto-start only resumes a session you previously chose to start.
- Video frames travel inside the normal Minecraft connection. They are not separately encrypted, so they're only as private as the connection to the server itself. Treat this as you would any unencrypted webcam stream.
- Frames are never uploaded to Mojang, Microsoft, or any external service. They go through your own game server and only to other players on it.
- Your client-side preferences (camera choice, hidden players, etc.) are stored locally on your machine and never sent to the server.
