@@ -4,6 +4,14 @@ A comprehensive backend API for the SubStream Protocol, supporting wallet-based
44
55## Features
66
7+ ### 🎥 Video Transcoding & Streaming
8+ - ** Multi-resolution transcoding** : Automatic conversion to 360p, 720p, and 1080p
9+ - ** HLS streaming** : Segmented video for smooth adaptive bitrate streaming
10+ - ** Adaptive quality** : Automatic quality selection based on connection speed
11+ - ** Background processing** : Queue-based transcoding with Redis
12+ - ** Storage flexibility** : Support for S3 and IPFS storage
13+ - ** Pay-per-second integration** : Seamless integration with subscription system
14+
715### 🔐 Authentication (SIWE)
816- Wallet-based authentication using Sign In With Ethereum
917- JWT token generation and validation
@@ -32,33 +40,64 @@ A comprehensive backend API for the SubStream Protocol, supporting wallet-based
3240## Quick Start
3341
3442### Prerequisites
35- - Node.js 16 +
43+ - Node.js 20.11.0 +
3644- npm or yarn
45+ - FFmpeg (for video transcoding)
46+ - Redis (for job queue)
3747
3848### Installation
3949
40501 . Clone the repository:
4151``` bash
42- git clone https://github.com/jobbykings /SubStream-Protocol-Backend.git
52+ git clone https://github.com/lifewithbigdamz /SubStream-Protocol-Backend.git
4353cd SubStream-Protocol-Backend
4454```
4555
46- 2 . Install dependencies:
56+ 2 . Install FFmpeg:
57+ ``` bash
58+ # Ubuntu/Debian
59+ sudo apt-get update && sudo apt-get install -y ffmpeg
60+
61+ # macOS
62+ brew install ffmpeg
63+
64+ # Windows
65+ # Download from https://ffmpeg.org/download.html
66+ ```
67+
68+ 3 . Install and start Redis:
69+ ``` bash
70+ # Ubuntu/Debian
71+ sudo apt-get install redis-server
72+ sudo systemctl start redis
73+
74+ # macOS
75+ brew install redis
76+ brew services start redis
77+
78+ # Windows
79+ # Download from https://redis.io/download
80+ ```
81+
82+ 4 . Install dependencies:
4783``` bash
4884npm install
4985```
5086
51- 3 . Copy environment variables:
87+ 5 . Copy environment variables:
5288``` bash
5389cp .env.example .env
5490```
5591
56- 4 . Configure your environment variables in ` .env ` :
92+ 6 . Configure your environment variables in ` .env ` :
5793- Set your JWT secret
5894- Add IPFS service API keys
59- - Configure database connections (optional for development)
95+ - Configure Redis connection
96+ - Set up S3 credentials (optional)
97+ - Configure FFmpeg path
98+ - Set up CDN base URL
6099
61- 5 . Start the server:
100+ 7 . Start the server:
62101``` bash
63102# Development
64103npm run dev
0 commit comments