Home · Cameras

Cameras

Live cameras stay on your LAN. Capacity depends on the box.

Dutywall does not pull your cameras into a vendor cloud. The site box bookmarks RTSP, remuxes once per camera, and serves HLS for Roku plus WebRTC for the web player. Plan hardware around how many feeds are active at once, not how many TVs are watching.

What “a stream” means here

Each bookmarked camera that is assigned to at least one screen with a fresh heartbeat runs one remux on the box (typically 540p @ 15 fps H.264 + silent AAC into a short HLS playlist, plus a WebRTC publish for the web player). Many consumer cams (including Wyze RTSP) only allow one client. The box is that client. Every display then reads the remux from the box, not from the camera.

One camera on many TVs does not multiply remux load. Lobby + break room + hallway all watching “Front door” is still one remux. What multiplies cost is different cameras active at once.

Roku multi-cam: 3–4 grids default to one ffmpeg mosaic HLS so the TV plays a single Video stream. PiP (2 cams) stays a native main + inset on the channel (inset above the ticker). The grid mosaic is an extra encode on the box (sources + composite). Web kiosk / tablet WebRTC can show multiple panes without that mosaic pass, lighter on the site manager and lower lag (~0.5–2 s).

Expected simultaneous remuxes

Numbers are planning guidance for Dutywall’s default remux profile, not a lab guarantee. Busy scenes, higher source resolution, Wi‑Fi cameras, and thermal throttling all reduce headroom. Prefer wired cams and a cool, powered host. The box panel also shows Stream capacity for this host (optional encode probe).

HostRoleSimultaneous 540p remuxes4-cam Roku mosaicNotes
Raspberry Pi 3Display kiosk only0 (do not remux here)NoFine as an HDMI player. Put cameras on a Pi 5 or the appliance.
Raspberry Pi 4 (4–8 GB)Light site box1–2 comfortable · 3 marginalNoHome / small lobby. Not enough CPU for a live 4-up mosaic.
Raspberry Pi 5 (8 GB)Small facility box3–5 comfortable · ~6 peak3-up OK · 4-up tightBest Pi class for a handful of wall cams.
Intel N100 / N150 applianceRecommended site manager~8–12 typicalYes, sized for thisWhat we ship (~$1,800). Plan 4 source remuxes + 1 mosaic encode for a live 4-cam Roku wall, with headroom for weather/panel/cloud sync.
Larger x86 / VMPlant or multi-camScale with cores4–8+ with headroomSame software. For 6–8 cameras prefer two Roku mosaics (e.g. two 4-ups) or web/kiosk WebRTC grids (no mosaic encode).

Appliance sizing for 4–8 cameras: the N100/N150 box we sell is the right default when you want up to four cameras in one live mosaic on Roku, or up to ~8–12 distinct remuxes (full-screen cams, fewer mosaics). Eight cameras in a single live mosaic is not supported. Split across two displays or use WebRTC kiosks for overview walls.

Latency: pick the player for how “live” you need

The remux runs once on the box. Lag is mostly the player path, not cloud delay. If you need the lowest lag (door buzzers, loading docks, security desks), put that wall on a WebRTC-capable device: a small PC or Pi with the Dutywall web kiosk, a tablet / browser on /player, Windows Edge kiosk, or Android / Fire TV using the web player, not the Roku channel. WebRTC multi-pane also skips the Roku mosaic encode, which is lighter on the box.

Roku cannot do WebRTC for this; it always uses HLS. That is fine for ambient hallway cameras. It will not feel like the phone’s native cam app.

DisplayPathTypical lag from cameraWhen to use it
PC / mini PC web kioskWebRTC (WHEP) from the box~0.5–2 secondsBest “live” feel. Prefer for doors, docks, desks that need to react.
Pi HDMI kiosk (web player)WebRTC when ICE works~0.5–2 secondsSame as PC kiosk. Good low-cost wall without Roku.
Tablet / phone browserWebRTC (fallback HLS on some Safari builds)~0.5–2 s WebRTC · ~3–8 s if HLS fallbackStaff check-ins, temporary monitors. Stay on the LAN.
Android / Fire TV (web player)WebRTC when the WebView allows it~1–3 seconds typicalNon-Roku TVs that can run the player full-screen.
Web player forced to HLSShort HLS from the box (~1 s segments)~3–8 secondsFallback when WebRTC/ICE is blocked. Still better than Roku.
Roku sideload channelHLS only~6–12 seconds typical; can climb toward ~15–30 s if a remux runs a long time before recycleExisting Roku TVs, ambient boards. Not for “is someone at the door right now.”
Roku PiP (2 cams)Native main + inset (default)~1–3 seconds per streamReal PiP on the TV; Swap flips main/inset.
Roku 3–4 gridOne mosaic HLS (default)~6–12 seconds (smooth video)Multi-cam on one TV. Uncheck composite for stills/WebRTC-style panes on kiosks.

Numbers assume a wired camera → Dutywall remux on the LAN, default 540p @ 15 fps profile. Wi‑Fi cameras, overloaded boxes, and congested Wi‑Fi to the TV all add lag.

Rule of thumb: security / reception that must feel live → web kiosk or tablet on WebRTC. Break-room ambient multi-cam → Roku mosaic on the N100 appliance is fine.

Design rules that keep walls reliable

Install notes: Raspberry Pi box · Linux / appliance · compose profile camera for MediaMTX · add a screen.

Questions

Does every TV remux the camera again?

No. One remux per active camera on the box; every display reads that output. Ten TVs on the same feed is still one remux.

How do I get the least camera lag?

Use a WebRTC path: PC or Pi web kiosk, tablet/browser on /player, or Android/Fire web player. Expect about 0.5–2 seconds. Roku is HLS-only at about 6–12 seconds and is better for ambient viewing.

Why is Roku slower than a tablet?

Roku has no WebRTC video path in the Dutywall channel. It plays short HLS from the box, which needs a few seconds of buffer. The delay is on the TV path, not in a cloud.

Can a Pi 3 be the site manager if we only have weather boards?

Yes for light signage. Add live cameras and you should move remux to a Pi 4/5 or N100.

What about existing HLS from an NVR?

If the NVR already offers HLS, bookmark that URL and skip an extra remux when the player supports it. Lag then follows the NVR’s playlist, not Dutywall’s remux profile.

Does putting one camera on every TV overload the box?

No. Load scales with distinct cameras being remuxed, not with how many screens display the same feed.