Skip to content

SesameDVR

SesameDVR is a lightweight video recording and playback server for IP cameras.

It runs on a Linux server, accepts RTSP/HTTP/HTTPS streams, records a local video archive, serves live and archived video over HTTP/WebRTC, and includes a web admin interface for stream management and diagnostics.

Who it is for

SesameDVR is useful for:

  • integrators who need to deploy a local DVR/NVR quickly;
  • telecom operators and building operators who need API access to live and archived camera video;
  • sites with IP cameras: offices, warehouses, construction sites, industrial and remote locations;
  • SmartYard/RBT deployments that need a compatible DVR backend for camera preview, archive and playback;
  • IPTV networks where operators need a CatchUP archive for TV channels.

The main value is a controlled local or operator-side video archive with web access, API, embeddable player, clear diagnostics and flexible storage options.

Key features

  • recording from IP cameras and other RTSP/HTTP/HTTPS sources;
  • live HLS playback and native WebRTC/WHEP playback;
  • archive playback by time range;
  • MP4 archive export;
  • Flussonic API compatibility, so existing solutions that already work with Flussonic can be integrated with SesameDVR;
  • ONVIF event support: motion detector events are attached to the stream and help users jump through the archive faster;
  • multi-disk archive recording: segments of the same stream are alternated between disks, so if one of N disks fails, you lose roughly 1/N of the segments instead of the whole archive;
  • playback authorization through an Auth Backend, a static token, or no authorization mode;
  • camera preview as MP4/JPEG;
  • built-in /admin panel;
  • server dashboard: CPU, RAM, disk, network, ingest and stream status;
  • stream management via UI, HTTP API and CLI;
  • ONVIF discovery;
  • single-volume and multi-volume archive storage.

Screenshots

SesameDVR stream management

Stream management: status, playback tabs and per-camera controls.

SesameDVR monitoring dashboard

Server monitoring dashboard with system and stream metrics.

SesameDVR ONVIF events

ONVIF motion events attached to camera streams for faster archive navigation.

Playback and API

Endpoint templates:

  • <base-url>/<stream>/index.m3u8 — live HLS playlist;
  • <base-url>/<stream>/index.fmp4.m3u8 — live HLS/fMP4 playlist;
  • <base-url>/<stream>/index-<start>-<duration>.m3u8 — archive HLS playlist for a selected time range;
  • <base-url>/<stream>/recording_status.json — recording status and available archive intervals;
  • <base-url>/<stream>/preview.mp4 — current MP4 preview;
  • <base-url>/<stream>/preview.jpg — current JPEG preview;
  • <base-url>/<stream>/<yyyy>/<mm>/<dd>/<HH>/<MM>/<SS>-preview.mp4 — archive MP4 preview by date and time;
  • <base-url>/<stream>/<timestamp>-preview.jpg — archive JPEG preview by timestamp;
  • <base-url>/<stream>/whep/ — WebRTC playback endpoint.

Integration scenarios

SesameDVR can be used as:

  • a standalone IP-camera archive and playback server;
  • a Flussonic-compatible media server for existing video products and integrations;
  • a DVR backend for SmartYard/RBT camera preview, live video and archive playback;
  • a CatchUP archive service in telecom IPTV networks.

RBT integration

We have also built a dedicated RBT integration: a new plugin can automatically manage SesameDVR media servers.

When camera streams are added, removed or updated in RBT, operators do not need to do the same work twice — RBT performs the required actions on the correct SesameDVR media server automatically.

For deployments that need users, access groups, favorites, camera mosaics and a map interface, combine SesameDVR with SesamePortal.