Created ROADMAP.md
This commit is contained in:
parent
47ca6980a8
commit
971332f243
85
ROADMAP.md
Normal file
85
ROADMAP.md
Normal file
@ -0,0 +1,85 @@
|
|||||||
|
# Video Compression Web App Roadmap
|
||||||
|
|
||||||
|
## MVP (Minimal Viable Product)
|
||||||
|
|
||||||
|
### Issue 1: Frontend - Single File Upload Page
|
||||||
|
**Description:**
|
||||||
|
Create a simple webpage allowing the user to upload a single video file.
|
||||||
|
|
||||||
|
**Checklist:**
|
||||||
|
- [ ] Create HTML upload form.
|
||||||
|
- [ ] Add "Upload" button.
|
||||||
|
- [ ] Display "Processing..." message while backend compresses video.
|
||||||
|
- [ ] Show download link after compression is complete.
|
||||||
|
|
||||||
|
### Issue 2: Backend - FFmpeg Compression for One File
|
||||||
|
**Description:**
|
||||||
|
Implement server-side compression for a single uploaded video file using FFmpeg.
|
||||||
|
|
||||||
|
**Checklist:**
|
||||||
|
- [ ] Receive uploaded file and store temporarily.
|
||||||
|
- [ ] Compress video using H.265/HEVC with preset fast and CRF ~24.
|
||||||
|
- [ ] Use AAC audio codec at ~128kbps.
|
||||||
|
- [ ] Send compressed file back to frontend.
|
||||||
|
- [ ] Delete temporary files after download.
|
||||||
|
|
||||||
|
## Intermediate
|
||||||
|
|
||||||
|
### Issue 3: Frontend - Multiple File Uploads
|
||||||
|
**Description:**
|
||||||
|
Extend the frontend to allow uploading multiple files simultaneously.
|
||||||
|
|
||||||
|
**Checklist:**
|
||||||
|
- [ ] Support selecting multiple files.
|
||||||
|
- [ ] Display individual progress bars for each file.
|
||||||
|
- [ ] Allow preset selection (codec, resolution, bitrate).
|
||||||
|
|
||||||
|
### Issue 4: Backend - Asynchronous Multiple File Processing
|
||||||
|
**Description:**
|
||||||
|
Enable backend to handle multiple file uploads asynchronously.
|
||||||
|
|
||||||
|
**Checklist:**
|
||||||
|
- [ ] Process multiple videos in parallel.
|
||||||
|
- [ ] Generate individual download links for each compressed file.
|
||||||
|
- [ ] Validate uploaded files to ensure they are videos only.
|
||||||
|
|
||||||
|
## Advanced
|
||||||
|
|
||||||
|
### Issue 5: Backend - Compression Job Queue
|
||||||
|
**Description:**
|
||||||
|
Implement a job queue to manage video compression tasks efficiently.
|
||||||
|
|
||||||
|
**Checklist:**
|
||||||
|
- [ ] Queue video compression jobs.
|
||||||
|
- [ ] Limit concurrent compression tasks to prevent server overload.
|
||||||
|
- [ ] Track job status (pending, processing, complete).
|
||||||
|
|
||||||
|
### Issue 6: Backend - User Authentication & File History
|
||||||
|
**Description:**
|
||||||
|
Add optional user accounts and allow users to track their uploaded videos.
|
||||||
|
|
||||||
|
**Checklist:**
|
||||||
|
- [ ] Implement user registration and login.
|
||||||
|
- [ ] Track uploaded files per user.
|
||||||
|
- [ ] Allow users to download their file history.
|
||||||
|
- [ ] Auto-delete files after a configurable number of days.
|
||||||
|
|
||||||
|
### Issue 7: Security Enhancements
|
||||||
|
**Description:**
|
||||||
|
Protect the server and users from misuse and unsafe uploads.
|
||||||
|
|
||||||
|
**Checklist:**
|
||||||
|
- [ ] Sanitize filenames to avoid malicious paths.
|
||||||
|
- [ ] Reject non-video files.
|
||||||
|
- [ ] Enforce max file size limit.
|
||||||
|
- [ ] Ensure temporary files are stored in a safe directory.
|
||||||
|
|
||||||
|
### Issue 8: Optional Features
|
||||||
|
**Description:**
|
||||||
|
Add advanced functionality to improve user experience.
|
||||||
|
|
||||||
|
**Checklist:**
|
||||||
|
- [ ] Provide multiple compression presets (H.264 1080p, H.265 1440p).
|
||||||
|
- [ ] Integrate with NAS or external storage for long-term retention.
|
||||||
|
- [ ] Add public/private mode for uploaded files.
|
||||||
|
|
||||||
Loading…
x
Reference in New Issue
Block a user