# cctv2hot CCTV Studio > An AI-powered fixed-camera surveillance footage and CCTV video generator. Create realistic 10-second security camera clips with burned-in UTC timestamp OSD, custom camera IDs, locations, sensor grain, and vignette from an approved first frame. - Canonical URL: https://cctv2hot.trawlkit.com - Full Documentation: https://cctv2hot.trawlkit.com/llms-full.txt - Primary Modality: Text-to-Image / Image-to-Video (Fixed CCTV / Security Camera) - Output Resolution: 1280x720 (16:9), 24-30 fps, H.264 MP4, silent (audio stripped) ## Core Capabilities - **Fixed-Workflow CCTV Pipeline**: Still Frame Generation -> First Frame Selection/Locking -> OSD & Timestamp Configuration -> 10-Second Continuous Surveillance Video Generation. - **Burned-in Security OSD**: Custom Camera Name (e.g. `CAM-11 [REC]`), location tag (`GARAGE B1`, `CONVENIENCE STORE`), UTC per-second ticking clock, and 4-corner placement (top-left, top-right, bottom-left, bottom-right). - **Authentic Surveillance Aesthetics**: Fixed ceiling/corner wide-angle perspective, low-light / night vision, color grading, sensor noise, scanline grain, and optical vignette. - **Model Stack**: - Image generation: Google Gemini 3 Pro Image (`Google/gemini-3-pro-image`) - Video synthesis: Google Gemini Omni 1.2 Flash (`Google/gemini-omni-1.2-flash`) - Post-processing: ffmpeg ASS burned-in OSD + H.264 composition - Storage: Cloudflare R2 S3-compatible object store - Gateway: xroute.ai BYOK (Bring Your Own Key) universal gateway ## Pre-Built Surveillance Scenarios 1. **Late-night Convenience Store**: Parking lot view, wet asphalt, fluorescent sign, quiet surveillance. 2. **Underground Parking Garage**: Ramp entrance, yellow safety stripes, cool white lights, concrete pillars. 3. **Residential Community Gate**: Night turnstiles, illuminated access control, tree shadows. 4. **Logistics Loading Dock**: Half-open roller door, industrial pallets, reflective puddles. 5. **Office Elevator Lobby**: Stainless steel doors, polished reflective floor, ceiling LED strips. ## REST API Overview - `POST /api/projects`: Initialize a project with scene description and optional reference image. - `POST /api/projects/:id/renders`: Generate still candidates (up to 6). - `POST /api/projects/:id/select`: Lock one still as the permanent first frame. - `POST /api/projects/:id/look`: Configure camera ID, location, UTC timestamp format, and 4-corner placement with instant ffmpeg preview. - `POST /api/projects/:id/video`: Synchronously generate a 10s 720P surveillance clip and burn in live OSD timestamps. - `GET /api/projects/:id`: Fetch project metadata, still frames, and video assets. - `GET /api/health`: Verify system health, SQLite schema, and R2 connectivity.