aleeusgr / efected-coto-emmory

a project
MIT License
0 stars 0 forks source link

describe the architecture #30

Open aleeusgr opened 7 months ago

aleeusgr commented 7 months ago

Create a high-level design document outlining the architecture of the new cloud service. This should include an overview of components, data flow, interfaces with other systems (e.g., CCTV cameras), security considerations, and expected performance metrics.

Details

**Video Management Software (VMS):** VMS is a centralized software application that manages and controls multiple cameras, encoders, and other components of the system. It provides features like video streaming, recording, playback, and search capabilities for stored footage. Some popular VMS solutions include Milestone Systems, Genetec, and iSight. examples: - [x] [sentryshot](https://codeberg.org/SentryShot/sentryshot) **Video Streaming Servers:** These servers are responsible for delivering live video streams to clients (such as web browsers, mobile apps, or security monitoring software) over the internet. Popular streaming server solutions include Nginx, Apache HTTP Server, and Wowza Media Server. - [x] #36 **Camera Management Module**: This module is responsible for connecting to the CCTV cameras, obtaining their streams, and processing them before sending them to clients or storage systems. It should support various protocols like RTSP, ONVIF, etc., to ensure compatibility with a wide range of camera models. The module will also handle camera registration, configuration management, and notifications for events such as motion detection or low-quality streams. **Stream Processing Module**: This component is responsible for processing the video streams received from cameras. It can perform tasks like image analysis (e.g., detecting objects, identifying faces), video compression, encryption, or other transformations based on user requirements and preferences. The processed data will be stored in a database or sent to clients as required.

aleeusgr commented 7 months ago

https://github.com/launchbadge/realworld-axum-sqlx https://github.com/davidpdrsn/realworld-axum-sqlx

aleeusgr commented 6 months ago

I worked on the Twitch video system for nearly 10 years. It started as a Python monolith, a C transcoder using libav (ffmpeg), and some open source HTTP proxies. It's now Go microservices and the same C transcoder. We were exploring Rust before I left but mostly in the context of reducing the CPU cost of network delivery; the type of optimization you can only make at a huge scale. I would personally use Rust for much of the video system today if I were to start from scratch.

https://www.reddit.com/r/rust/comments/14av5jm/how_good_is_rust_for_video_processing/

aleeusgr commented 6 months ago

video streaming servers:

36

aleeusgr commented 6 months ago

Video Management System

https://codeberg.org/SentryShot/sentryshot