Jatin917/riverside-clone

### 📝 Feature: Generate Edited Video for Client Download

Offen

#13 geöffnet am 17.07.2025

 (0 Kommentare) (0 Reaktionen) (1 zugewiesene Person)TypeScript (0 Forks)auto 404
enhancementgood first issuehelp wantednextJSnodejstypescript

Repository-Metriken

Stars
 (4 Sterne)
PR-Merge-Metriken
 (Keine gemergten PRs in 30 T)

Beschreibung

🎯 Goal

Allow clients to download a fully edited video of their recorded session by merging all individual participant recordings, using backend session metadata (e.g. join/leave times).


📦 Context

Each participant's local video/audio is recorded in chunks and uploaded to cloud storage. The backend already tracks:

  • Session ID
  • Participant IDs
  • When each participant joined and left the session

All this info is stored in:

  • sessions table
  • participants table
  • participant_sessions table (contains joined_at and left_at)

✅ Acceptance Criteria

  • Create a backend job/process that:

    • Fetches all uploaded chunks for a session
    • Uses backend metadata to determine layout timeline (who was visible when)
    • Merges participant videos into one final .webm or .mp4
    • Stores the final video in cloud storage
    • Generates a public or signed URL for the user to download
  • Expose an endpoint or UI link:
    GET /sessions/:id/download → triggers or fetches the final video.


💡 Notes

  • Backend should generate a layout manifest based on joined_at / left_at
  • Use ffmpeg (or similar) to merge and render the final output
  • Add retry/failure handling if any chunk is missing

🔗 Related

  • Chunk upload handling
  • Participant session tracking
  • Manifest generation logic

Contributor Guide