# VidBlock: A Web3.0-Enabled Decentralized Blockchain Architecture for Live Video Streaming
## 3 System Design
### VidBlock Architecture
#### 3.1.4. Core Components for Enabling a Decentralized Streaming System  
In the VidBlock ecosystem, the **distributed storage system** and **smart contract** components are fundamental elements responsible for managing streaming metadata and coordinating user nodes in a decentralized environment. These systems play a vital role in ensuring data integrity across the network and providing real-time streaming information to users.  
* **Distributed storage system:** This system is tasked with storing the metadata associated with content and providing client nodes with information on active live streams. By decentralizing storage, this system enables the sharing of streaming channel information with consumer nodes without the need to collect or store detailed information about the creators, ensuring user privacy while allowing easy discovery and access to real-time content within the network.
* **Smart contract:** In the VidBlock ecosystem, smart contracts are pivotal elements deployed on the blockchain that autonomously manage and update lists of live streams originating from creator nodes, ensuring that streaming metadata is accurately reflected across the network in real time. In addition to managing stream information, these smart contracts also oversee the registration and coordination of client nodes, users who consume the streaming content, and blockchain relay nodes, which serve as intermediaries to facilitate connections within the P2P streaming network. By automating these processes, smart contracts maintain a seamless, decentralized environment that supports efficient content delivery and enhances network reliability.  
* **Node registry**: This registry serves as a comprehensive database that records and maintains information about all nodes participating in the VidBlock network. By storing essential details about each node, the node registry enables efficient management and tracking of nodes, ensuring seamless interaction across the network.
* **Node registry addresses**: This registry maps and stores each node's unique ViB ID along with the address of its corresponding node registry contract. This mapping system facilitates efficient retrieval and management of node information within the decentralized network, supporting streamlined communication and coordination among nodes.
* **Relay registry**: The relay registry is a specialized component within the VidBlock system responsible for managing relay nodes, dedicated nodes in the blockchain network that facilitate initial connections between client nodes for P2P live streaming. Relay nodes play a crucial role in establishing reliable streaming pathways, helping to ensure stable and efficient data transmission within the network.  
Together, these decentralized coordination and metadata management components form the backbone of VidBlock's streaming architecture, creating a stable, secure, and real-time environment for users. By distributing the control and storage of streaming information, VidBlock upholds data integrity, strengthens user privacy, and reduces reliance on centralized servers, providing a scalable and trustworthy platform for decentralized streaming. Leveraging a distributed storage system alongside blockchain-based smart contracts, VidBlock offers a robust infrastructure that facilitates efficient node management and seamless access to live streaming content.