Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/anandpiyush1521/video-stram-backend
https://github.com/anandpiyush1521/video-stram-backend
Last synced: 4 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/anandpiyush1521/video-stram-backend
- Owner: anandpiyush1521
- Created: 2024-08-04T05:10:23.000Z (6 months ago)
- Default Branch: main
- Last Pushed: 2024-10-22T17:12:09.000Z (3 months ago)
- Last Synced: 2024-11-25T20:12:25.531Z (2 months ago)
- Language: Java
- Size: 159 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: Readme.md
Awesome Lists containing this project
README
Video Streaming API
## Overview
This API provides endpoints for managing video uploads, retrieving video metadata, and streaming videos. It is implemented using Spring Boot and supports video file storage, metadata management, and efficient streaming.
## Features
- **Video Upload**: Allows users to upload video files with associated metadata.
- **Metadata Retrieval**: Provides details about the uploaded videos.
- **Video Streaming**: Supports streaming videos directly by their ID.
- **Chunked Streaming**: Allows partial content delivery and seeking within videos.## System Overview
## Setup and Installation
### Prerequisites
- Java 11 or higher
- Maven
- PostgreSQL (optional, depending on your storage choice)### Backend Setup
1. **Clone the Repository**
```bash
git clone https://github.com/your-repo/video-streaming-api.git
cd video-streaming-api
```2. **Install Dependencies**
```bash
mvn install
```3. **Set Up Environment Variables**
Create a `application.properties` file in the `src/main/resources` directory and add the following variables:
```properties
spring.datasource.url=jdbc:postgresql://localhost:5432/yourdatabase
spring.datasource.username=postgres
spring.datasource.password=yourpassword
```Replace `yourpassword` and `yourdatabase` with your PostgreSQL password and database name.
4. **Run the Application**
```bash
mvn spring-boot:run
```### Usage
1. **Access the API**
The API will be accessible at `http://localhost:8080`.
2. **Upload Videos**
Use the `/api/v1/videos` endpoint to upload videos.
3. **Stream Videos**
Stream videos using the `/api/v1/videos/stream/{videoId}` endpoint.
4. **Retrieve Metadata**
Get video metadata using the `/api/v1/videos` endpoint.
## Contributing
Contributions are welcome! Please open an issue or submit a pull request for any enhancements or bug fixes.