The platform supports multiple recording modes to handle different use cases and bandwidth requirements.
24/7 recording: continuously records all incoming streams without interruption, ensuring full coverage.
Motion-based recording: captures video only when motion is detected, helping reduce storage usage while focusing on relevant events.
FTP video recording: stores uploaded video clips received from external systems such as NVRs, where each event is saved as a separate file and used for playback and alerts.
Webhook-triggered recording: starts or manages recording based on external event signals or integrations, enabling flexible automation with third-party systems and custom workflows.
Failed Conversion Jobs
If video conversion/transcoding fails repeatedly, the job should be marked as failed instead of staying pending forever.
Recommended behavior:
- limit retry count
- use retry backoff
- close DB connections after failed jobs
- cancel or pause jobs for broken streams
- show camera_id, server_id, job_id and failure reason in logs
- allow manual Retry where appropriate
One bad camera should not block or overload other camera jobs.