Stream Dahua TiOC 2.0 4K Active Deterrence Turret to Cloudflare R2
Three-in-One 4K Camera with Full Color, AI Smart Detection, and FTP Cloud Backup. Follow our step-by-step setup guide below to stream footage directly to Cloudflare R2 via FTP/S with Rilavek as the pipe — zero on-prem NVR required.
Your Dahua IPC-HDW3849H-AS-PV uploads footage offsite in real time directly to Cloudflare R2. Intruders cannot steal or destroy evidence by seizing on-prem recorder hardware.
Store Dahua IPC-HDW3849H-AS-PV recordings in Cloudflare R2 on your own terms. Apply automated bucket lifecycle rules to roll over or archive clips after 30, 90, or 365 days.
Rilavek ingests native FTP/S streams from your Dahua IPC-HDW3849H-AS-PV and writes them directly to Cloudflare R2 via multipart S3 PUTs with zero disk writes.
How to Stream Dahua TiOC 2.0 4K Active Deterrence Turret to Cloudflare R2
Follow these 6 steps to provision your object storage, configure Rilavek’s Data Store, Sender, and Ingestion Pipe, enter your camera firmware settings, and establish automated S3 retention rules.
Set Up Your
Cloudflare R2 Bucket & Generate API Keys
Configure your target bucket and API credentials inside Cloudflare R2 so Rilavek can stream motion clips and continuous video directly into your storage.
Cloudflare R2 provides an included monthly free tier of 10 GB storage, 1,000,000 Class A operations (uploads), 10,000,000 Class B operations (reads), and $0 egress bandwidth fees. Ensure you have completed the initial R2 subscription setup in your Cloudflare dashboard under Storage & databases > R2 before generating tokens.
Open R2 and Create Your Surveillance Bucket
In the Cloudflare Dashboard , navigate to Storage & databases > R2 > Overview. Click the blue Create bucket button and specify a name, such as cctv-dahua-recordings.
Leave location set to Automatic for the lowest-latency edge ingestion worldwide. If your organization requires strict data residency, select a specific Jurisdiction (European Union eu, United States us, or FedRAMP fedramp). Note that jurisdictional buckets require jurisdiction-specific S3 endpoints.
Copy Your 32-Character Cloudflare Account ID
On the right sidebar of the R2 Overview page under the Account Details section, locate and copy your 32-character hexadecimal Account ID. This is required to assemble your unique S3 API endpoint.
Create an Account API Token with Scoped Permissions
Under Account Details on the R2 overview page, select Manage next to API Tokens, then click Create API Token:
- Token Type: Choose Create Account API token (recommended for bridge infrastructure so credentials remain valid independently of individual user accounts; requires Super Administrator role).
- Permissions: Select Object Read & Write. This grants S3 API upload, download, and listing capabilities without exposing administrative privileges (like deleting buckets or altering account configs).
- Bucket Scoping: Select Apply to specific buckets only and pick your created bucket (
cctv-dahua-recordings). - TTL / Expiration: Leave blank for permanent 24/7 camera recording, or specify an expiration according to your organization's security rotation schedule.
Click Create Account API token to generate your credentials.
Copy Your Access Key ID and Secret Access Key
Record your Access Key ID (token ID) and Secret Access Key securely for Step 2.
Add Your Data Store in Rilavek
In your Rilavek dashboard, navigate to Data Stores > New Data Store, select your provider, and enter your S3 credentials. Rilavek verifies the connection with an automated write-probe before saving.
Add New Data Store
Create a Camera Sender in Rilavek
Go to Senders in the Rilavek sidebar and click New Sender. A Sender represents the hardware identity of your Dahua TiOC 2.0 4K Active Deterrence Turret and generates a dedicated device-level password.
Create New Sender
Must be at least 6 characters, lowercase, start with a letter/underscore, and contain only letters, numbers, hyphens, or underscores.
Secure credentials will be automatically generated for this sender.
Sender Credentials
Create & Configure Your Ingestion Pipe in Rilavek
Go to Pipes in the sidebar and click Create Pipe. Configure the 4 core sections of your pipeline: General (Pipe ID), Inputs (FTP), Access Control (Sender permission), and Destinations (Data Store).
1General Settings (Pipe ID)
Every pipeline in Rilavek is assigned an immutable, globally unique Pipe ID (e.g. p_cctv9x). This ID acts as an isolated ingestion channel that segregates audit logs, real-time transfer metrics, and storage routing. It also forms the second half of your scoped camera FTP login username (username@p_cctv9x).
Pipe ID
Use this ID to identify this pipe in logs. Combine it with the sender username for complete authentication details.
2Inputs (FTP / FTPS Ingress)
The Inputs configuration defines how camera files enter Rilavek. Enabling the FTP Ingress input provides a persistent, high-availability ingestion server (ftp.rilavek.com) compatible with active and passive FTP modes, explicit TLS negotiation, and standard CCTV firmware video push routines.
Inputs
Enable inputs to receive data.
FTP Ingress
Endpoint enabled. Connect using your Sender credentials.
Example: cam_ipchdw3849haspv@p_cctv9x
Use the password configured for the specific Sender.
3Access Control (Sender Authorization)
Access Control prevents unauthorized uploads by enforcing a zero-trust boundary on the ingestion pipe. Only explicitly authorized Senders (such as Dahua TiOC 2.0 4K Active Deterrence Turret) can authenticate and stream video into this pipe. Any requests with unassigned credentials are rejected at the network edge.
Access Control
Restricts who can upload to this pipe.
Individual Senders
Grant or revoke pipe access for specific individual senders.
4Destinations (Target Cloud Storage Routing)
The Destinations section routes video clips to your target cloud storage provider. Linking your configured Data Store routes all received footage directly to your Cloudflare R2 bucket (cctv-dahua-recordings). Video files are committed on-the-fly via parallel multipart S3 PUTs without intermediate disk caching.
Destinations
This is where we send your files to.
Configure FTP, Motion Detection & Linkage Method in Dahua TiOC 2.0 4K Active Deterrence Turret Firmware
Open your camera's web configuration page in your browser at its local LAN IP address and complete the steps below:
Step 5AConfigure FTP Streaming Credentials
Click Setting > Storage > Destination > FTP.
Enter your Rilavek Ingestion Pipe parameters as indicated by the red annotations below.
cam_ipchdw3849haspv@p_cctv9x (SenderUsername@PipeID).Step 5BConfigure Upload Schedule (Snapshot & Record Schedule)
Click Setting > Storage > Schedule.
Select the Snapshot or Record tab, then ensure your schedule grid has Yellow (Motion) or Green (General) time blocks configured so the camera uploads footage during active periods.
Dahua IP cameras only upload files during times marked on the schedule matrix. Highlight periods in Yellow (Motion) for motion-triggered snapshot/clip upload to save S3 storage and ingress fees.
Step 5CEnable FTP Destination in Storage Path (Linkage Routing)
Click Setting > Storage > Destination > Path.
Check the "FTP" checkboxes under Scheduled and Motion Detection for Record and Snapshot. In Dahua firmware, FTP storage must be explicitly activated in this Path table for files to upload to Rilavek.
| Event Type | Scheduled | Motion Detection |
|---|---|---|
| FTP |
| Event Type | Scheduled | Motion Detection |
|---|---|---|
| FTP |
In Dahua IP camera firmware, you must check the "FTP" boxes under Scheduled and Motion Detection in this Path destination matrix. If these boxes remain unchecked, the camera will record events locally to SD card/NVR storage, but will never forward snapshots or video clips to your Rilavek FTP Ingestion Gateway even if the credentials under the FTP tab test 100% successfully.
Dahua Firmware Notes & Best Practices
Model-specific nuances, recommended settings, and verified workarounds for the IPC-HDW3849H-AS-PV
Dahua separates Snapshot FTP from Video Record FTP under different sub-menus. Configuring one does not automatically enable the other.
Dahua only uploads files when the Storage > Schedule timeline is marked in Green (General) or Yellow (Motion).
Verify Ingestion
Click Test in your camera's FTP settings or trigger a test recording transfer. In your Rilavek dashboard, navigate to Pipes > your pipeline > Transfers tab to inspect incoming files as video clips stream into Cloudflare R2.
| FILE | SENDER | SIZE | DATE | STATE |
|---|---|---|---|---|
dahua/ipc-hdw3849h-as-pv/2026-09-10/ch01_143000.mp4 | cam_ipchdw3849haspv | 18.4 MB | Sep 10, 14:30 | Success |
dahua/ipc-hdw3849h-as-pv/2026-09-10/ch01_142500.mp4 | cam_ipchdw3849haspv | 21.2 MB | Sep 10, 14:25 | Success |
dahua/ipc-hdw3849h-as-pv/2026-09-10/ch01_142000.mp4 | cam_ipchdw3849haspv | 19.7 MB | Sep 10, 14:20 | Success |
Common questions
Does the Dahua TiOC 2.0 4K Active Deterrence Turret require an on-site NVR to stream to Cloudflare R2?
No. The Dahua TiOC 2.0 4K Active Deterrence Turret has built-in FTP client firmware. It connects directly to Rilavek's cloud bridge on port 21, streaming video chunks into your Cloudflare R2 bucket without requiring a local NVR or PC.
How does retention work on Cloudflare R2?
You define exact retention policies (e.g. 30, 90, or 365 days) directly in your Cloudflare R2 bucket using standard S3 Lifecycle expiration rules. Footage is never auto-overwritten by proprietary cloud caps.
What happens if my internet connection drops?
If your IPC-HDW3849H-AS-PV has a local MicroSD card installed, it records motion events locally and retries the FTP upload once connectivity is restored.
Stream Dahua TiOC 2.0 4K Active Deterrence Turret to Cloudflare R2
Create your free Rilavek ingestion pipe in seconds. No NVR hardware, no proprietary camera cloud subscriptions, and 100% data ownership in your private storage bucket.
Free plan includes 10GB of transfer. No credit card required.