REC
LIVE SYSTEM OVERVIEW
How it records, where the footage goes, and why it barely costs a low-end PC anything
opslabs-bodycam · Xon Sight evidence portal · OPS Voice
F10 · /bodycam · OPS Phone
WHAT IT IS
Every officer issued a camera can record their own view as real video, in-game — not a screenshot, not a third-party capture tool. Every finished recording lands in an evidence portal automatically.
The officer's own screen — including the game's HUD and minimap, not the phone or menus.
The evidence portal only ever receives a link to the video, never the file itself.
ESX, QBCore, Qbox, ox_core, ND, or completely standalone — it finds what's running.
opslabs-bodycam
Press F10 (rebindable), type /bodycam, or use the OPS Phone → Bodycam app — start, stop, add a note, see your own footage and who else is live.
Starts itself on shots fired, a weapon drawn, or lights & siren above 68 mph. It never stops itself — only going off duty, or the officer, does that.
| Trigger | Fires on |
|---|---|
| Weapon drawn | Gun or taser leaves the holster — not just aiming |
| Shots fired | Any weapon discharged, taser included |
| Lights & siren | Driving at speed with them on — a parked car with lights flashing doesn't count |
While recording, the visible camera on the vest shows its red LEDs — everyone nearby can see it's live. A beep marks start and stop, and a double beep every 2 minutes, like the real thing.
opslabs-bodycam · starting a recording
HOW IT WORKS
Whatever the officer sees — HUD included
WebGL frame + burned-in overlay: time, officer, serial, street
Encodes straight to webm, right in the browser
Gets a link to the file, never the file itself
No separate screenshot resource and no second full-scene render — the same NUI browser the phone and menus already use captures and encodes the picture.
Long recordings are cut into parts (3 minutes by default). Each part uploads and becomes its own evidence item as soon as it's done.
opslabs-bodycam · the capture pipeline
THE CAMERA IS NEVER REALLY OFF
So when an auto-trigger fires — shots fired, weapon drawn — the clip catches the 3 minutes that led up to it, not just what comes after.
ALWAYS RUNNING
8 fps · ~200 kbps
On duty, every officer issued a camera
WHILE RECORDING
30 fps · 3 Mbps
Full quality — the buffer pauses the moment this starts
THE EVIDENCE SYSTEM
Who's recording right now, with their position and the way they're facing. Updates within about a second of someone starting or stopping — it doesn't wait for the next sync cycle.
Every finished part, captioned: officer · job · street · part number · time · what triggered it · any note added from the phone.
Only a link crosses over. The portal never receives the actual video file — just its https address, so the clip has to be reachable on the web, not sent through the game server.
It doesn't give up. If the portal's down or the key's wrong, the same part is retried every 2 minutes, up to 10 times, before it's given up on.
opslabs-bodycam · Xon Sight evidence portal
VOICE
A listening bot joins the officer's voice channel
Mic, nearby voices, radio — one stream per speaker
ffmpeg mixes and muxes it onto that video part
Points at the version with sound
If the voice bridge is down, or the mix fails, the silent video still goes to Xon Sight — the evidence never just disappears, it's just quieter. One honest limit: FiveM gives neither the camera's NUI nor the server the game's own sound, so gunshots, sirens and engines can never be in the recording — only what people say near the officer.
opslabs-bodycam · voice via OPS Voice bridge
PERFORMANCE
On genuinely low-end machines, turning the main recording resolution, frame rate or bitrate down costs nothing functionally — the evidence portal, captions and auto-triggers all work exactly the same at any quality setting.
opslabs-bodycam · performance
HOW IT COMPARES
What each one actually documents publicly, as of this writing — not every script out there, just four well-known ones spanning free and paid.
Paid. Fivemanage / Cloudflare R2 storage, a tablet UI to browse clips, bodycam + dashcam in one.
Paid. Discord or Fivemanage uploads, configurable fps, dashcam with a speed readout.
Free, open source. Clips post to a Discord channel; lets you watch another player's camera live, in-engine.
Free, MIT licensed. Live feeds only (no archive) at station terminals, dual front/rear dashcams.
opslabs-bodycam · who we're comparing against
HOW IT COMPARES
| Feature | OPS Bodycam | SX Dev | Code Studio | spy- bodycam | hype- bodycam |
|---|---|---|---|---|---|
| Evidence portal with captions & case management | Yes | Tablet only | No | No | No |
| Pre-event rolling buffer | Yes | No | No | No | No |
| Auto-start (shots fired / weapon drawn) | Yes | Not documented | Item only | Not documented | Yes |
| Voice/radio muxed into the evidence file | Yes | Not documented | Not documented | Mic → Discord only | Not documented |
| Documented low-end-PC tuning | Yes | No | fps only | No | No |
| Dashcam (vehicle-mounted) | Coming soon | Yes | Yes | Yes | Yes |
| Watch another officer's camera live, in-engine | Coming soon | Not documented | Not documented | Yes | Yes |
| Free / open source | TBD | Paid | Paid | Yes | Yes |
Based on each project's own public documentation/README as of October 2026 — "not documented" means the feature isn't mentioned, not confirmed absent. Sources: docs.sxdevelopment.com, codestudio5m.gitbook.io, github.com/Your-Spy/spy-bodycam, github.com/hypescripts-fivem/hype-bodycam.
TO BE FAIR
Two things the scripts above already have, that OPS Bodycam is still building toward:
spy-bodycam and hype-bodycam let another officer watch a live feed without leaving the game. OPS Bodycam's /live page only shows position and facing today, not video — FiveM gives no cheap, documented way to stream live camera frames out of the game, so this needs solving properly before it ships.
SX Development, Code Studio, spy-bodycam and hype-bodycam all record from a vehicle too. OPS Bodycam is bodycam-only today, but the same capture pipeline already does the hard part — a dashcam is planned on top of it.
opslabs-bodycam · an honest comparison
ACCESS
| Mode | Who gets one |
|---|---|
| job | Anyone on duty in a listed job (police, sheriff, EMS…) |
| item | Anyone carrying the bodycam item |
| job_and_item / job_or_item | Both required, or either one |
| ace | Only an explicit server permission — standalone servers |
| everyone | Every player on the server |
Going off duty, or losing the job or item, cuts the camera off within 20 seconds — no manual cleanup needed.
opslabs-bodycam · who gets a camera
IN SHORT
The officer's actual view, watermarked, as webm video
Every part, captioned, on Xon Sight — with voice muxed in
No second render, no extra process, tunable for weak PCs
Find it: OPS Phone → Bodycam, or press F10
opslabs-bodycam