Cameras
Carplay V2 ships with three independent camera systems. Each can be enabled, configured and gated separately.
| System | Purpose | Recording? |
|---|---|---|
| Rear Camera | Quick rear-view (parking, reversing) | No |
| Security Camera | 360° sentry mode with full FOV control | Yes |
| DashCam | Front + rear angles with overlay (plate, speed, time) | Yes |
1. Rear Camera
A scripted rear-view camera that attaches to the back of the vehicle and follows rotation in real-time.
How It Works
- Tap Rear Camera in the dock (or the rear-cam quick button)
- A scripted camera attaches to the vehicle's rear
- The camera follows the vehicle's heading every frame
- Press the configured exit key to return to normal view
Custom Per-Vehicle Offsets
Some vehicle models (especially addon vehicles) need the camera positioned differently. Define per-model X offset:
Config.CustomRearCamera = {
["duel"] = { x = 2 },
["mymodel"] = { x = 1.5 },
}
Configuration
| Option | Default | Description |
|---|---|---|
Config.RearCameraExitKey | 167 | GTA control index to exit (see FiveM controls docs) |
Config.CustomRearCamera | {} | Per-vehicle X offset overrides |
Config.Modules.RearCamera | true | Show rear camera module |
Config.DockButtons.rearCamera | true | Show rear camera dock button |
2. Security Camera (360° Sentry Mode)
A full-featured sentry-style camera that lets the player control a virtual camera attached to the vehicle exterior with full pan, tilt and zoom. Ideal for parked vehicles in stash spots.
Features
- 360° pan and tilt with mouse
- Zoom between configurable min and max FOV
- Four default angles — front, rear, left, right (instant snap)
- Visual filter — security-cam timecycle with strength control
- Animated noise — adjustable
- NUI overlay effects — scanlines, vignette, corner brackets, timestamp, animated static texture
- Recording up to 5 minutes (configurable max)
- Cloud upload — Fivemanage or Discord webhook
- Stored history — last N recordings per player browseable in the UI
How It Works
- Open the Security Cam app
- Camera attaches to the vehicle with the default angle
- Mouse to look around, scroll to zoom, number keys for preset angles
- Press the record button to capture; press again to stop
- Recording uploads to the configured provider in the background
- Past recordings appear in the Recordings tab
Configuration
Config.SecurityCamera = {
enabled = true,
fov = 70.0, -- default FOV
minFov = 20.0, -- max zoom in
maxFov = 110.0, -- max zoom out
defaultAngle = "front", -- "front" | "rear" | "left" | "right"
cameraHeight = 0.6, -- meters above vehicle center
cameraDistance = 0.3, -- meters beyond vehicle edge
-- Visual filter (GTA timecycle modifier)
filter = "CAMERA_secuirity", -- or "CAMERA_secuirity_FUZZ", "scanline_cam", "scanline_cam_cheap", false
filterStrength = 1.0, -- 0.0 - 1.0
noise = 0.15, -- 0.0 - 1.0
-- NUI overlay effects
overlay = {
scanlines = true,
vignette = true,
corners = true,
timestamp = true,
noise = true,
},
-- Recording
recording = {
enabled = true,
maxDurationSeconds = 300, -- 5 min
maxRecordingsPerPlayer = 20,
},
-- Permissions
jobs = {},
discordRoles = {},
}
Permission Gating
Use Config.SecurityCamera.jobs and discordRoles to restrict access. See Permission System.
Module Toggle
| Option | Default | Description |
|---|---|---|
Config.Modules.SecurityCamera | true | Show security camera module |
3. DashCam
A driving dashcam with front and rear angles, overlay information (plate, speed, timestamp) and recording with cloud upload. Designed for incident capture.
Features
- Front and rear angles — toggle in real-time
- Configurable FOV and offsets
- Visual filter — same options as security cam
- NUI overlay — scanlines, vignette, corners, timestamp, speedometer, plate number
- Recording with auto-upload to Fivemanage or Discord
- Focus key to interact with UI buttons while driving (
F9default) - Recordings list with playback, download links and metadata
How It Works
- Tap the DashCam dock button
- The dashcam UI overlays the front view (or rear, configurable default)
- Press record to start capturing
- Drive normally — overlay shows live speed, plate, and time
- Press F9 (or the configured focus key) to gain mouse focus and interact with buttons
- Stop recording — clip uploads in background
- View past recordings in the Recordings tab
Configuration
Config.DashCam = {
enabled = true,
fov = 70.0,
defaultAngle = "front", -- "front" | "rear"
cameraHeight = 0.5, -- meters above vehicle roof
cameraDistanceFront = 0.2, -- forward of front bumper
cameraDistanceRear = 0.2, -- behind rear bumper
filter = "CAMERA_secuirity",
filterStrength = 0.7,
noise = 0.1,
overlay = {
scanlines = false,
vignette = true,
corners = true,
timestamp = true,
speedometer = true,
plateNumber = true,
},
recording = {
enabled = true,
maxDurationSeconds = 300,
maxRecordingsPerPlayer = 20,
},
-- NUI focus toggle (allows clicking UI buttons while driving)
focusKey = "F9",
focusCommand = "dashcam_focus",
focusBindDescription = "Toggle DashCam Focus",
jobs = {},
discordRoles = {},
}
Module Toggle
| Option | Default | Description |
|---|---|---|
Config.Modules.DashCam | true | Show dashcam module |
Config.DockButtons.dashCam | true | Show dashcam dock button |
Recording Upload — Fivemanage vs Discord
Both Security Cam and DashCam can upload recordings to either provider. Set in server/config.lua:
| Provider | File limit | Setup |
|---|---|---|
| Fivemanage | Unlimited | API key from fivemanage.com |
| Discord | 25 MB | Webhook URL |
ServerConfig.DashCamUploadProvider = "fivemanage" -- or "discord"
ServerConfig.DashCamFivemanageApiKey = "YOUR_API_KEY"
ServerConfig.DashCamDiscordWebhook = ""
-- Security Cam can use separate destinations (or leave empty to inherit dashcam settings)
ServerConfig.SecurityCamUploadProvider = "fivemanage"
ServerConfig.SecurityCamFivemanageApiKey = ""
ServerConfig.SecurityCamDiscordWebhook = ""
Database
Recordings are tracked in the code9_carplay2_dashcam table. See Database.
