Video to After Effects Automation Platform

Complete technical blueprint for ingesting videos and generating After Effects projects

System Architecture

Frontend (React)
→
Backend API (Node.js)
→
Video Pipeline (Python)
→
After Effects

1. Video Ingestion & Scraping

Multi-source support for 1000+ sites via yt-dlp, Puppeteer for dynamic content.

class VideoIngestionService {
  async ingestVideo(sourceUrl) {
    const sourceType = this.detectSourceType(sourceUrl);
    // youtube, vimeo, tiktok, instagram, twitter, direct
    const videoPath = await this.download(sourceUrl);
    return { jobId, videoPath, sourceType };
  }
}

2. Video Analysis & Asset Extraction

3. After Effects Project Structure

Project_{JOB_ID}/
├── _Compositions/
│   ├── MAIN_COMP
│   └── Precomps/Scene_01, Scene_02...
├── Footage/Video/
├── Audio/Stems/
└── Assets/

4. After Effects Automation (ExtendScript)

Generated .jsx script automatically:

5. Tech Stack Recommendation

FrontendReact 18, TypeScript, Tailwind CSS, React Dropzone
BackendNode.js, Express, Socket.io, Bull Queue
Video ProcessingPython, FFmpeg, PySceneDetect, OpenCV, Demucs
StorageMinIO/S3, Redis, PostgreSQL
AE IntegrationExtendScript (.jsx), JSON Schema

API Endpoints

POST /api/videos/import — Import video from URL

GET /api/videos/:id/status — Check processing status

GET /api/videos/:id/analysis — Get analysis results

POST /api/videos/:id/generate — Generate AE project

GET /api/videos/:id/download — Download project ZIP

Workflow

User submits URL → Download (yt-dlp/Puppeteer) → Analyze (FFmpeg/PySceneDetect) → Generate (JSON/JSX) → Package → Download ZIP