This project is a video streaming application built using FFmpeg for video processing. It consists of a backend server and a frontend client, allowing users to upload, process, and stream videos.
- Backend: Node.js server handling video processing, storage, and API endpoints.
- Frontend: Web client (built with Vite/React) for user interaction and video playback.
backend/: Contains the server-side code, including controllers, models, routes, and video storage.frontend/: Contains the client-side code, including React, Vite, and other dependencies.
- Key Files:
index.js: Main server entry point.package.json: Node.js dependencies and scripts.controllers/: API endpoint handlers.models/: Data models.routes/: API route definitions.utils/: Utility functions.videos/: Directory for stored videos.thumbnails/: Directory for video thumbnails.
- Technologies: Node.js, FFmpeg for video processing.
- Key Files:
index.html: Main HTML file.vite.config.js: Vite configuration for building the frontend.package.json: Frontend dependencies and scripts.src/: Source code directory.public/: Public assets.
- Technologies: Vite, React, Node.js, FFmpeg for video processing.
-
Backend Setup:
- Navigate to
backend/directory. - Run
npm installto install dependencies. - Configure environment variables in
.envfile (e.g., port, database settings). - Start the server with
npm startornode index.js.
- Navigate to
-
Frontend Setup:
- Navigate to
frontend/directory. - Run
npm installto install dependencies. - Start the development server with
npm run dev.
- Navigate to
- Upload videos through the frontend interface.
- The backend processes videos using FFmpeg and stores them in the
videos/directory. - Stream videos via the provided API endpoints.
VidSpace.1.1.mp4
- Fork the repository.
- Create a feature branch.
- Make your changes.
- Submit a pull request.
This project is for demonstration purposes. Adjust licensing as needed.